1 /* PR middle-end/24109 */ 2 3 extern void abort (void); 4 5 struct A { int i; int j; }; 6 struct B { struct A *a; struct A *b; }; 7 struct C { struct B *c; struct A *d; }; 8 struct C e = { &(struct B) { &(struct A) { 1, 2 }, &(struct A) { 3, 4 } }, &(struct A) { 5, 6 } }; 9 10 int main(void)11main (void) 12 { 13 if (e.c->a->i != 1 || e.c->a->j != 2) 14 abort (); 15 if (e.c->b->i != 3 || e.c->b->j != 4) 16 abort (); 17 if (e.d->i != 5 || e.d->j != 6) 18 abort (); 19 return 0; 20 } 21