annotate gcc/testsuite/gcc.c-torture/execute/20001024-1.c @ 131:84e7813d76e9

gcc-8.2
author mir3636
date Thu, 25 Oct 2018 07:37:49 +0900
parents 04ced10e8804
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
111
kono
parents:
diff changeset
1 struct a;
kono
parents:
diff changeset
2
kono
parents:
diff changeset
3 extern int baz (struct a *__restrict x);
kono
parents:
diff changeset
4
kono
parents:
diff changeset
5 struct a {
kono
parents:
diff changeset
6 long v;
kono
parents:
diff changeset
7 long w;
kono
parents:
diff changeset
8 };
kono
parents:
diff changeset
9
kono
parents:
diff changeset
10 struct b {
kono
parents:
diff changeset
11 struct a c;
kono
parents:
diff changeset
12 struct a d;
kono
parents:
diff changeset
13 };
kono
parents:
diff changeset
14
kono
parents:
diff changeset
15 int bar (int x, const struct b *__restrict y, struct b *__restrict z)
kono
parents:
diff changeset
16 {
kono
parents:
diff changeset
17 if (y->c.v || y->c.w != 250000 || y->d.v || y->d.w != 250000)
kono
parents:
diff changeset
18 abort();
kono
parents:
diff changeset
19 }
kono
parents:
diff changeset
20
kono
parents:
diff changeset
21 void foo(void)
kono
parents:
diff changeset
22 {
kono
parents:
diff changeset
23 struct b x;
kono
parents:
diff changeset
24 x.c.v = 0;
kono
parents:
diff changeset
25 x.c.w = 250000;
kono
parents:
diff changeset
26 x.d = x.c;
kono
parents:
diff changeset
27 bar(0, &x, ((void *)0));
kono
parents:
diff changeset
28 }
kono
parents:
diff changeset
29
kono
parents:
diff changeset
30 int main()
kono
parents:
diff changeset
31 {
kono
parents:
diff changeset
32 foo();
kono
parents:
diff changeset
33 exit(0);
kono
parents:
diff changeset
34 }