1union U
2{
3  __complex__ int ci;
4  __complex__ float cf;
5};
6
7float gd;
8extern float bar (float, float);
9
10float foo (int b, union U u)
11{
12  float f1, f2, r;
13
14  if (b)
15    {
16      f1 = __real__ u.cf;
17      f1 = __imag__ u.cf;
18    }
19  else
20    {
21      f1 = __real__ u.ci;
22      f1 = __imag__ u.ci;
23    }
24
25  r = bar (f1, f2);
26  return r;
27}
28