diff options
author | Stan Shebs <stanshebs@google.com> | 2015-08-26 16:10:00 -0700 |
---|---|---|
committer | Roland McGrath <roland@hack.frob.com> | 2015-08-26 16:10:43 -0700 |
commit | fff289f358ee26bb4cdd70f72f4b1b0e1a7d07a1 (patch) | |
tree | 178d336afbbe2df8521eccc7e4e16f66ab60531c /sysdeps | |
parent | 55504a3df099b70e06cd14064adfe6bd815cedbd (diff) | |
download | glibc-fff289f358ee26bb4cdd70f72f4b1b0e1a7d07a1.tar.gz glibc-fff289f358ee26bb4cdd70f72f4b1b0e1a7d07a1.tar.xz glibc-fff289f358ee26bb4cdd70f72f4b1b0e1a7d07a1.zip |
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 <libc-internal.h>. (__kernel_tanl): Ignore uninitialized warnings around use of SIGN.
Diffstat (limited to 'sysdeps')
-rw-r--r-- | sysdeps/ieee754/ldbl-96/k_tanl.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/sysdeps/ieee754/ldbl-96/k_tanl.c b/sysdeps/ieee754/ldbl-96/k_tanl.c index ae6821d984..6276c06e71 100644 --- a/sysdeps/ieee754/ldbl-96/k_tanl.c +++ b/sysdeps/ieee754/ldbl-96/k_tanl.c @@ -57,6 +57,7 @@ */ #include <float.h> +#include <libc-internal.h> #include <math.h> #include <math_private.h> 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) |