1 /* { dg-do run } */ 2 3 extern void abort (void); 4 5 struct S 6 { 7 int f0; 8 } a = {1}, b, g, *c = &b, **f = &c; 9 10 int *d, **e = &d, h; 11 12 struct S foo()13foo () 14 { 15 *e = &h; 16 if (!d) 17 __builtin_unreachable (); 18 *f = &g; 19 return a; 20 } 21 22 int main()23main () 24 { 25 struct S *i = c; 26 *i = foo (); 27 if (b.f0 != 1) 28 abort (); 29 return 0; 30 } 31