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