[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 <george.lander@arm.com> * acinclude.m4 (glibcxx_cv_obsolete_isnan): Define _GLIBCXX_INCLUDE_NEXT_C_HEADERS before including math.h. * configure: Regenerate. From-SVN: r246025
This commit is contained in:
parent
f1b0632aab
commit
74106ead26
3 changed files with 9 additions and 1 deletions
|
@ -1,3 +1,9 @@
|
||||||
|
2017-03-10 George Lander <george.lander@arm.com>
|
||||||
|
|
||||||
|
* acinclude.m4 (glibcxx_cv_obsolete_isnan): Define
|
||||||
|
_GLIBCXX_INCLUDE_NEXT_C_HEADERS before including math.h.
|
||||||
|
* configure: Regenerate.
|
||||||
|
|
||||||
2017-03-09 Jonathan Wakely <jwakely@redhat.com>
|
2017-03-09 Jonathan Wakely <jwakely@redhat.com>
|
||||||
|
|
||||||
* include/std/functional (_Not_fn): Define macro to simplify
|
* include/std/functional (_Not_fn): Define macro to simplify
|
||||||
|
|
|
@ -2297,7 +2297,8 @@ AC_DEFUN([GLIBCXX_CHECK_MATH11_PROTO], [
|
||||||
AC_MSG_CHECKING([for obsolete isnan function in <math.h>])
|
AC_MSG_CHECKING([for obsolete isnan function in <math.h>])
|
||||||
AC_CACHE_VAL(glibcxx_cv_obsolete_isnan, [
|
AC_CACHE_VAL(glibcxx_cv_obsolete_isnan, [
|
||||||
AC_COMPILE_IFELSE([AC_LANG_SOURCE(
|
AC_COMPILE_IFELSE([AC_LANG_SOURCE(
|
||||||
[#include <math.h>
|
[#define _GLIBCXX_INCLUDE_NEXT_C_HEADERS
|
||||||
|
#include <math.h>
|
||||||
#undef isnan
|
#undef isnan
|
||||||
namespace std {
|
namespace std {
|
||||||
using ::isnan;
|
using ::isnan;
|
||||||
|
|
1
libstdc++-v3/configure
vendored
1
libstdc++-v3/configure
vendored
|
@ -18390,6 +18390,7 @@ else
|
||||||
|
|
||||||
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
|
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
|
||||||
/* end confdefs.h. */
|
/* end confdefs.h. */
|
||||||
|
#define _GLIBCXX_INCLUDE_NEXT_C_HEADERS
|
||||||
#include <math.h>
|
#include <math.h>
|
||||||
#undef isnan
|
#undef isnan
|
||||||
namespace std {
|
namespace std {
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue