X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;ds=sidebyside;f=src%2Fmath%2Fpowl.c;h=5b6da07b2efcce53795ec80da4a787208a2cb733;hb=2e5fff43dd7fc808197744c67cca7908ac19bb4f;hp=ce6274cf73e00c5233acd4954e3d7d2dccf6ff70;hpb=cf682072ce16080ebe199e5055f686d81c8416ce;p=musl diff --git a/src/math/powl.c b/src/math/powl.c index ce6274cf..5b6da07b 100644 --- a/src/math/powl.c +++ b/src/math/powl.c @@ -227,7 +227,7 @@ long double powl(long double x, long double y) if (y <= -LDBL_MAX) { if (x > 1.0 || x < -1.0) return 0.0; - if (x != 0.0) + if (x != 0.0 || y == -INFINITY) return INFINITY; } if (x >= LDBL_MAX) { @@ -513,5 +513,10 @@ static long double powil(long double x, int nn) y = 1.0/y; return y; } - +#elif LDBL_MANT_DIG == 113 && LDBL_MAX_EXP == 16384 +// TODO: broken implementation to make things compile +long double powl(long double x, long double y) +{ + return pow(x, y); +} #endif