if (!isfinite (__real__ x) || !isfinite (__imag__ x))
if (isnan (__real__ x) && isnan (__imag__ x)) return x; else if (!isfinite (__real__ x) || !isfinite (__imag__ x))
__cprojl (__complex__ long double x){  __complex__ long double res;  if (!isfinite (__real__ x) || !isfinite (__imag__ x))    {      __real__ res = INFINITY;      __imag__ res = __copysignl (0.0, __imag__ x);    }  else    {      long double den = (__real__ x * __real__ x + __imag__ x * __imag__ x			 + 1.0);      __real__ res = (2.0 * __real__ x) / den;      __imag__ res = (2.0 * __imag__ x) / den;    }  return res;}