atan
double atan(double);
#define atan(a) __TG_COMPLEX((a), atan)
return (CMPLX(x, atan(y)));
__weak_alias(atan, _atan)
atan(double x)
else z=atan(fabs(y/x)); /* safe to do y/x */
if(hx==0x3ff00000&&lx==0) return atan(y); /* x=1.0 */
__weak_alias(atan, _atan)
DFUNC_DBL(atan)
T_LIBM_CHECK_NAN(0, atan, T_LIBM_NAN);
T_LIBM_CHECK(i, atan, values[i].x, values[i].y, 1.0e-15);
T_LIBM_CHECK_MINUS_ZERO(0, atan, -0.0);
T_LIBM_CHECK_PLUS_ZERO(0, atan, +0.0);
TEST(atan(tan(M_SQRT2)));