diff options
Diffstat (limited to 'sysdeps/ieee754/ldbl-96/e_lgammal_r.c')
-rw-r--r-- | sysdeps/ieee754/ldbl-96/e_lgammal_r.c | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/sysdeps/ieee754/ldbl-96/e_lgammal_r.c b/sysdeps/ieee754/ldbl-96/e_lgammal_r.c index 0cc35f9252..9862fe8d5c 100644 --- a/sysdeps/ieee754/ldbl-96/e_lgammal_r.c +++ b/sysdeps/ieee754/ldbl-96/e_lgammal_r.c @@ -306,6 +306,8 @@ __ieee754_lgammal_r (long double x, int *signgamp) } if (se & 0x8000) { + if (x < -2.0L && x > -33.0L) + return __lgamma_negl (x, signgamp); t = sin_pi (x); if (t == zero) return one / fabsl (t); /* -integer */ @@ -428,11 +430,7 @@ __ieee754_lgammal_r (long double x, int *signgamp) in warnings that it may be used uninitialized although in the cases where it is used it has always been set. */ DIAG_PUSH_NEEDS_COMMENT; -#if __GNUC_PREREQ (4, 7) DIAG_IGNORE_NEEDS_COMMENT (4.9, "-Wmaybe-uninitialized"); -#else - DIAG_IGNORE_NEEDS_COMMENT (4.9, "-Wuninitialized"); -#endif if (se & 0x8000) r = nadj - r; DIAG_POP_NEEDS_COMMENT; |