1 union U
2 {
3   __complex__ int ci;
4   __complex__ float cf;
5 };
6 
7 float gd;
8 extern float bar (union U);
9 
foo(int b,double f1,double f2,int c1,int c2)10 float 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