Runesync = 0x80, /* cannot represent part of a UTF sequence (<) */
Runeself = 0x80, /* rune and UTF sequences are the same (<) */
Runeerror = 0xFFFD, /* decoding error in UTF */
+ Runemax = 0xFFFF, /* 16 bit rune */
+ Runemask = 0xFFFF, /* bits used by runes (see grep) */
};
/*
#pragma varargck argpos sprint 2
#pragma varargck type "lld" vlong
+#pragma varargck type "llo" vlong
#pragma varargck type "llx" vlong
+#pragma varargck type "llb" vlong
#pragma varargck type "lld" uvlong
+#pragma varargck type "llo" uvlong
#pragma varargck type "llx" uvlong
+#pragma varargck type "llb" uvlong
#pragma varargck type "ld" long
+#pragma varargck type "lo" long
#pragma varargck type "lx" long
#pragma varargck type "lb" long
#pragma varargck type "ld" ulong
+#pragma varargck type "lo" ulong
#pragma varargck type "lx" ulong
#pragma varargck type "lb" ulong
#pragma varargck type "d" int
+#pragma varargck type "o" int
#pragma varargck type "x" int
#pragma varargck type "c" int
#pragma varargck type "C" int
extern long semrelease(long*, long);
extern int sleep(long);
extern int stat(char*, uchar*, int);
+extern int tsemacquire(long*, ulong);
extern Waitmsg* wait(void);
extern int waitpid(void);
extern long write(int, void*, long);
extern void werrstr(char*, ...);
#pragma varargck argpos werrstr 1
+extern long ainc(long*);
+extern long adec(long*);
+
extern char *argv0;
#define ARGBEGIN for((argv0||(argv0=*argv)),argv++,argc--;\
argv[0] && argv[0][0]=='-' && argv[0][1];\