main() { exit(0); } nested(a,b) { if ((a<4 && b == 'r') || (a == 1 && (b == 'h' || b == 'i')) || (a == 2 && (b == 'o' || b == 'y')) ) a=b; } /* type name scope */ void s(struct D *d) {} /* this struct D differs from the one below */ typedef struct D D; struct D {int x, y;} Dy={0}; D Dz={1}; Dfunc(){ D a; a.y=1; s(&Dy); /* error */ } /* qualifiers */ const a; int b; const int a, *x; int b, *y; volatile unsigned z; f() { x = y; z = z + z; /* should be 2 references to z's r-value */ } f1() { x = &a; x = &b; y = &a; /* error */ y = &b; } f2(int **a, int **b) { f(&x, &y); **a = 0; return **b; } g(const int *p) { g(&a); g(&b); return *p; } h(int *p) { f(&a); f(&b); return *p; } h1(const int x, int y) { h1(a,b); h1(b,a); return x + y; } h2() { char *b; const void *p; p = b; b = p; /* error */ } /* static naming */ extern int yy; set1() { { static yy=1; yy=2;} yy=4;} static int yy; set2() { yy=5; {static yy=2; yy=3; }} static void goo() {} sss() { int goo; { static int goo();} goo=1;} rrr(p) float *p; { extern int xr; { static float xr; { extern int *xr; } p=&xr; }} /* local extern */ static int ss1; int ss3; extern int ss5; setstatic() { extern int ss1,ss2,ss3,ss4; ss1 = ss2; ss3 = ss4; ss5 = 0;} static int ss2; int ss4; static int ss5; /* function prototypes */ int fx1(void); int fx1(); int gx1(double x); int gx1(x) double x; { gx1(&x); } /* error */ int hx1(); int hx1(double x,...); /* error */ int ff1(double x, int *y); int ff1(x,y) float x; int y[]; {x=y[0];} int gg1(int a); int gg1(a,b){a=b;} int hh1(const int x); hh1(a) {return a;} extern int strcmp(const char*, const char*); extern void qsort(void*, int, int, int (*)(const void*, const void*)); extern int cmp(char**a, char**b) { return strcmp(*a,*b); } sort() { int n; char *a[100]; qsort(a, n, sizeof(char*), (int (*)(const void*, const void*))cmp); qsort(a, n, sizeof(char*), cmp); /* error */ } /* nasty calls */ onearg(){ int a,b,c,d; f( ( (a? (b = 1): (c = 2)), (d ? 3 : 4) ) ); /* 1 argument */ }