1 struct a;
2 
3 extern int baz (struct a *__restrict x);
4 
5 struct a {
6   long v;
7   long w;
8 };
9 
10 struct b {
11   struct a c;
12   struct a d;
13 };
14 
bar(int x,const struct b * __restrict y,struct b * __restrict z)15 int bar (int x, const struct b *__restrict y, struct b *__restrict z)
16 {
17   if (y->c.v || y->c.w != 250000 || y->d.v || y->d.w != 250000)
18     abort();
19 }
20 
foo(void)21 void foo(void)
22 {
23   struct b x;
24   x.c.v = 0;
25   x.c.w = 250000;
26   x.d = x.c;
27   bar(0, &x, ((void *)0));
28 }
29 
main()30 int main()
31 {
32   foo();
33   exit(0);
34 }
35