1 // { dg-do run } 2 extern "C" void abort (void); 3 4 static union { 5 int x1; 6 long x2; 7 short x3; 8 long x4; 9 }; 10 11 static union { 12 union { 13 union { 14 int z; 15 }; 16 }; 17 union { 18 union { 19 double d; 20 int i; 21 }; 22 }; 23 }; 24 25 main()26int main() 27 { 28 z = 3; 29 if (i != 3) 30 abort (); 31 d = 2.5; 32 } 33