From fff289f358ee26bb4cdd70f72f4b1b0e1a7d07a1 Mon Sep 17 00:00:00 2001 From: Stan Shebs Date: Wed, 26 Aug 2015 16:10:00 -0700 Subject: [PATCH] Disable uninitialized warning with GCC 4.8 As with other spots in the code, GCC 4.8 unnecessarily complains about an uninitialized variable in tanl calcs, so this patch disables. With it, the library and sees the usual set of test passes. * sysdeps/ieee754/ldbl-96/k_tanl.c: Include . (__kernel_tanl): Ignore uninitialized warnings around use of SIGN. --- ChangeLog | 5 +++++ sysdeps/ieee754/ldbl-96/k_tanl.c | 12 ++++++++++++ 2 files changed, 17 insertions(+) diff --git a/ChangeLog b/ChangeLog index b191c40..5132b96 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2015-08-26 Stan Shebs + + * sysdeps/ieee754/ldbl-96/k_tanl.c: Include . + (__kernel_tanl): Ignore uninitialized warnings around use of SIGN. + 2015-08-26 Carlos Eduardo Seo * sysdeps/powerpc/bits/hwcap.h: Add PPC_FEATURE2_HTM_NOSC. diff --git a/sysdeps/ieee754/ldbl-96/k_tanl.c b/sysdeps/ieee754/ldbl-96/k_tanl.c index ae6821d..6276c06 100644 --- a/sysdeps/ieee754/ldbl-96/k_tanl.c +++ b/sysdeps/ieee754/ldbl-96/k_tanl.c @@ -57,6 +57,7 @@ */ #include +#include #include #include static const long double @@ -136,8 +137,19 @@ __kernel_tanl (long double x, long double y, int iy) { v = (long double) iy; w = (v - 2.0 * (x - (w * w / (w + v) - r))); + /* SIGN is set for arguments that reach this code, but not + otherwise, resulting 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.8, "-Wmaybe-uninitialized"); +#else + DIAG_IGNORE_NEEDS_COMMENT (4.8, "-Wuninitialized"); +#endif if (sign < 0) w = -w; + DIAG_POP_NEEDS_COMMENT; return w; } if (iy == 1) -- 2.7.4