1 /* { dg-do compile } */
2 /* { dg-options "-O -march=z196 -m64 -w" } */
3 union U { int r; float f; };
4 struct A {
5 int a;
6 union U b[64];
7 };
8 double foo (double);
9
10 void
11 bar (struct A *z, int x)
12 {
13 union U y;
14 y.f = foo (z->b[x].f);
15 z->a = y.r ? 4 : y.r;
16 }