1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
/* { dg-do run } */ /* { dg-options "-O0" } */ extern void abort (void); extern void exit (int); struct { union {int x; int y;}; int q; } b; union { struct {int x;}; int q; } e; main() { b.y = 10; b.x = 15; if (b.y != 15) abort(); e.x = 10; e.q = 15; if (e.x != 15) abort(); exit(0); }