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