From: rsandifo Date: Fri, 10 Mar 2017 12:22:45 +0000 (+0000) Subject: [libstdc++-v3] Fix detection of obsolete isnan X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=41c5ff99d7e3db9a7d10fd180075ff173084e66c;p=thirdparty%2Fgcc.git [libstdc++-v3] Fix detection of obsolete isnan libstdc++-v3 configure checks whether old glibc inline definitions of isnan would conflict with the libstdc++-v3 definitions and works around them if so. But if g++ 6.x build A is used to build another g++ 6.x B, the configure step for B will pick up the math.h installed alongside A instead of the glibc version. configure will then assume that the workaround isn't necessary, leaving B with a broken cmath. isinf already worked around this. This patch extends the same fix to isnan. (Thanks to George for the fix.) libstdc++-v3/ 2017-03-10 George Lander * acinclude.m4 (glibcxx_cv_obsolete_isnan): Define _GLIBCXX_INCLUDE_NEXT_C_HEADERS before including math.h. * configure: Regenerate. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@246025 138bc75d-0d04-0410-961f-82ee72b054a4 --- diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index 9da31bc984a9..d94f6d4831ec 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,9 @@ +2017-03-10 George Lander + + * acinclude.m4 (glibcxx_cv_obsolete_isnan): Define + _GLIBCXX_INCLUDE_NEXT_C_HEADERS before including math.h. + * configure: Regenerate. + 2017-03-09 Jonathan Wakely * include/std/functional (_Not_fn): Define macro to simplify diff --git a/libstdc++-v3/acinclude.m4 b/libstdc++-v3/acinclude.m4 index d9859aaf0297..5998fe6fdeef 100644 --- a/libstdc++-v3/acinclude.m4 +++ b/libstdc++-v3/acinclude.m4 @@ -2297,7 +2297,8 @@ AC_DEFUN([GLIBCXX_CHECK_MATH11_PROTO], [ AC_MSG_CHECKING([for obsolete isnan function in ]) AC_CACHE_VAL(glibcxx_cv_obsolete_isnan, [ AC_COMPILE_IFELSE([AC_LANG_SOURCE( - [#include + [#define _GLIBCXX_INCLUDE_NEXT_C_HEADERS + #include #undef isnan namespace std { using ::isnan; diff --git a/libstdc++-v3/configure b/libstdc++-v3/configure index 9bb986222ca5..29456c4421e6 100755 --- a/libstdc++-v3/configure +++ b/libstdc++-v3/configure @@ -18390,6 +18390,7 @@ else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ +#define _GLIBCXX_INCLUDE_NEXT_C_HEADERS #include #undef isnan namespace std {