1 /* { dg-do run } */
2 /* { dg-options "-Os" } */
3 /* { dg-require-effective-target int32plus } */
4 
5 union U
6 {
7   unsigned int f0;
8   int f1;
9 };
10 
11 int a, d;
12 
13 void
fn1(union U p)14 fn1 (union U p)
15 {
16   if (p.f1 <= 0)
17     if (a)
18       d = 0;
19 }
20 
21 void
fn2()22 fn2 ()
23 {
24   d = 0;
25   union U b = { 4294967286U };
26   fn1 (b);
27 }
28 
29 int
main()30 main ()
31 {
32   fn2 ();
33   return 0;
34 }
35