Rebase.
[official-gcc.git] / gcc / testsuite / gcc.dg / graphite / pr60979.c
blob0004a51248d40561718fbd6343db6f750a92af58
1 /* { dg-options "-O -fgraphite-identity" } */
3 #include <setjmp.h>
5 struct x;
7 typedef struct x **(*a)(struct x *);
9 struct x {
10 union {
11 struct {
12 union {
13 a *i;
14 } l;
15 int s;
16 } y;
17 } e;
20 jmp_buf c;
22 void
23 b(struct x *r)
25 int f;
26 static int w = 0;
27 volatile jmp_buf m;
28 f = (*(((struct x *)r)->e.y.l.i[2]((struct x *)r)))->e.y.s;
29 if (w++ != 0)
30 __builtin_memcpy((char *)m, (const char *)c, sizeof(jmp_buf));
31 if (setjmp (c) == 0) {
32 int z;
33 for (z = 0; z < 0; ++z)
36 d((const char *)m);