From 1b3726e0e5572f645242845edffff6c77b8a3fbaaa69d4e9fe5b8c9bbb961d71 Mon Sep 17 00:00:00 2001 From: Andreas Schwab Date: Mon, 25 Sep 2017 13:59:12 +0000 Subject: [PATCH] Accepting request 528652 from home:Andreas_Schwab:Factory - math-c++-compat.patch: add more C++ compatibility (BZ #22146) OBS-URL: https://build.opensuse.org/request/show/528652 OBS-URL: https://build.opensuse.org/package/show/Base:System/glibc?expand=0&rev=478 --- glibc-testsuite.changes | 7 ++++++- glibc-utils.changes | 7 ++++++- glibc.changes | 7 ++++++- math-c++-compat.patch | 27 ++++++++++++++++++++++++--- 4 files changed, 42 insertions(+), 6 deletions(-) diff --git a/glibc-testsuite.changes b/glibc-testsuite.changes index aaeae73..9a69689 100644 --- a/glibc-testsuite.changes +++ b/glibc-testsuite.changes @@ -1,8 +1,13 @@ +------------------------------------------------------------------- +Mon Sep 25 10:12:24 UTC 2017 - schwab@suse.de + +- math-c++-compat.patch: add more C++ compatibility (BZ #22146) + ------------------------------------------------------------------- Tue Sep 12 06:37:36 UTC 2017 - schwab@suse.de - Remove rpcsvc/yppasswd.* from glibc-devel -- ld-so-hwcap-x86-64.patch: add x86_64 to hwcap (BZ #22093, bsc#1056606) +- ld-so-hwcap-x86-64.patch: add x86_64 to hwcap (bsc#1056606, BZ #22093) ------------------------------------------------------------------- Thu Aug 31 13:43:07 UTC 2017 - schwab@suse.de diff --git a/glibc-utils.changes b/glibc-utils.changes index aaeae73..9a69689 100644 --- a/glibc-utils.changes +++ b/glibc-utils.changes @@ -1,8 +1,13 @@ +------------------------------------------------------------------- +Mon Sep 25 10:12:24 UTC 2017 - schwab@suse.de + +- math-c++-compat.patch: add more C++ compatibility (BZ #22146) + ------------------------------------------------------------------- Tue Sep 12 06:37:36 UTC 2017 - schwab@suse.de - Remove rpcsvc/yppasswd.* from glibc-devel -- ld-so-hwcap-x86-64.patch: add x86_64 to hwcap (BZ #22093, bsc#1056606) +- ld-so-hwcap-x86-64.patch: add x86_64 to hwcap (bsc#1056606, BZ #22093) ------------------------------------------------------------------- Thu Aug 31 13:43:07 UTC 2017 - schwab@suse.de diff --git a/glibc.changes b/glibc.changes index aaeae73..9a69689 100644 --- a/glibc.changes +++ b/glibc.changes @@ -1,8 +1,13 @@ +------------------------------------------------------------------- +Mon Sep 25 10:12:24 UTC 2017 - schwab@suse.de + +- math-c++-compat.patch: add more C++ compatibility (BZ #22146) + ------------------------------------------------------------------- Tue Sep 12 06:37:36 UTC 2017 - schwab@suse.de - Remove rpcsvc/yppasswd.* from glibc-devel -- ld-so-hwcap-x86-64.patch: add x86_64 to hwcap (BZ #22093, bsc#1056606) +- ld-so-hwcap-x86-64.patch: add x86_64 to hwcap (bsc#1056606, BZ #22093) ------------------------------------------------------------------- Thu Aug 31 13:43:07 UTC 2017 - schwab@suse.de diff --git a/math-c++-compat.patch b/math-c++-compat.patch index 4717366..a68648f 100644 --- a/math-c++-compat.patch +++ b/math-c++-compat.patch @@ -1,3 +1,9 @@ +2017-09-22 Gabriel F. T. Gomes + + [BZ #22146] + math/math.h: Let fpclassify use the builtin in C++ mode, even + when optimazing for size. + 2017-08-28 Gabriel F. T. Gomes [BZ #21930] @@ -30,7 +36,22 @@ Index: glibc-2.26/math/math.h =================================================================== --- glibc-2.26.orig/math/math.h +++ glibc-2.26/math/math.h -@@ -442,8 +442,12 @@ enum +@@ -402,7 +402,13 @@ enum + + /* Return number of classification appropriate for X. */ + # if __GNUC_PREREQ (4,4) && !defined __SUPPORT_SNAN__ \ +- && !defined __OPTIMIZE_SIZE__ ++ && (!defined __OPTIMIZE_SIZE__ || defined __cplusplus) ++ /* The check for __cplusplus allows the use of the builtin, even ++ when optimization for size is on. This is provided for ++ libstdc++, only to let its configure test work when it is built ++ with -Os. No further use of this definition of fpclassify is ++ expected in C++ mode, since libstdc++ provides its own version ++ of fpclassify in cmath (which undefines fpclassify). */ + # define fpclassify(x) __builtin_fpclassify (FP_NAN, FP_INFINITE, \ + FP_NORMAL, FP_SUBNORMAL, FP_ZERO, x) + # else +@@ -442,8 +448,12 @@ enum /* Return nonzero value if X is positive or negative infinity. */ # if __HAVE_DISTINCT_FLOAT128 && !__GNUC_PREREQ (7,0) \ @@ -45,7 +66,7 @@ Index: glibc-2.26/math/math.h # define isinf(x) \ (__builtin_types_compatible_p (__typeof (x), _Float128) \ ? __isinff128 (x) : __builtin_isinf_sign (x)) -@@ -470,7 +474,32 @@ enum +@@ -470,7 +480,32 @@ enum # include /* Return nonzero value if X is a signaling NaN. */ @@ -79,7 +100,7 @@ Index: glibc-2.26/math/math.h /* Return nonzero value if X is subnormal. */ # define issubnormal(x) (fpclassify (x) == FP_SUBNORMAL) -@@ -484,15 +513,40 @@ enum +@@ -484,15 +519,40 @@ enum # endif # else /* __cplusplus */ extern "C++" {