From c3587effe27a3ac8c1406f064b7705963be9887a Mon Sep 17 00:00:00 2001 From: nsz Date: Mon, 19 Mar 2012 19:14:32 +0100 Subject: [PATCH] minor fix in __tanl (get sign properly) --- src/math/__tanl.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/math/__tanl.c b/src/math/__tanl.c index e39e9df4..50ba2140 100644 --- a/src/math/__tanl.c +++ b/src/math/__tanl.c @@ -51,8 +51,7 @@ long double __tanl(long double x, long double y, int iy) { int i; iy = iy == 1 ? -1 : 1; /* XXX recover original interface */ - // FIXME: this is wrong, use copysign, signbit or union bithack - osign = x >= 0 ? 1.0 : -1.0; /* XXX slow, probably wrong for -0 */ + osign = copysignl(1.0, x); if (fabsl(x) >= 0.67434) { if (x < 0) { x = -x; -- 2.20.1