1 /* { dg-do run } */ 2 3 extern void abort (void); 4 5 union u 6 { 7 int i; 8 float f; 9 } v; 10 foo(float * f)11 float foo (float *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