1 /* { dg-do run } */ 2 3 extern void abort (void); 4 5 union u 6 { 7 int i; 8 short f; 9 } v; 10 foo(short * f)11 short foo (short *f) 12 { 13 *f = 1; 14 v.i = 0; 15 v.f = 0; 16 return *f; 17 } 18 main()19 int main() 20 { 21 if (foo (&v.f) != 0) 22 abort (); 23 return 0; 24 } 25