1 /* { dg-do compile } */ 2 /* { dg-options "-O -fno-tree-sra -fdump-tree-fre1-details" } */ 3 4 union U { 5 float f; 6 int i; 7 }; 8 foo(union U * p)9int foo (union U *p) 10 { 11 union U u; 12 p->f = 0.0; 13 u = *p; 14 return u.i; 15 } 16 17 /* avr has 16 bit int and 32 bit float */ 18 /* { dg-final { scan-tree-dump "Replaced u.i with 0 in" "fre1" {xfail avr-*-* } } } */ 19