1 typedef __SIZE_TYPE__ size_t;
2 extern size_t strlen (const char *s);
3
4 typedef struct A {
5 int a, b;
6 } A;
7
8 typedef struct B {
9 struct A **a;
10 int b;
11 } B;
12
13 A *a;
14 int b = 1, c;
15 B d[1];
16
foo(A * x,const char * y,int z)17 void foo (A *x, const char *y, int z)
18 {
19 c = y[4] + z * 25;
20 }
21
bar(const char * v,int w,int x,const char * y,int z)22 A *bar (const char *v, int w, int x, const char *y, int z)
23 {
24 if (w)
25 abort ();
26 exit (0);
27 }
28
test(const char * x,int * y)29 void test (const char *x, int *y)
30 {
31 foo (d->a[d->b], "test", 200);
32 d->a[d->b] = bar (x, b ? 0 : 65536, strlen (x), "test", 201);
33 d->a[d->b]->a++;
34 if (y)
35 d->a[d->b]->b = *y;
36 }
37
main()38 int main ()
39 {
40 d->b = 0;
41 d->a = &a;
42 test ("", 0);
43 }
44