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)9 int 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