1  float
       2  f (float a1)
       3  {
       4    union { float f; int l; } fl1;
       5    fl1.f = a1;
       6    return fl1.l ? 1.0 : a1;
       7  }
       1  float
       2  f (float a1)
       3  {
       4    union { float f; int l; } fl1;
       5    fl1.f = a1;
       6    return fl1.l ? 1.0 : a1;
       7  }