aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaolo Carlini <pcarlini@suse.de>2007-11-09 15:54:33 +0000
committerPaolo Carlini <pcarlini@suse.de>2007-11-09 15:54:33 +0000
commit4241e0dbd9c81c3355461c320e3dd4431fb51a19 (patch)
treeaa8b68b6180c6bc37e6a51bf0590f7ce0a68aef6
parent4248a4c3a45a9fe39532a316ec57eb376cbeccd6 (diff)
2007-11-09 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/34032 * acinclude.m4 ([GLIBCXX_ENABLE_C99], [GLIBCXX_CHECK_C99_TR1]): Use -std=c++98 instead of the default -std=gnu++98. * configure: Regenerate. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@130047 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--libstdc++-v3/ChangeLog7
-rw-r--r--libstdc++-v3/acinclude.m414
-rwxr-xr-xlibstdc++-v3/configure16
3 files changed, 32 insertions, 5 deletions
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index 7abb3c281c1..baea4ac38dd 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,3 +1,10 @@
+2007-11-09 Paolo Carlini <pcarlini@suse.de>
+
+ PR libstdc++/34032
+ * acinclude.m4 ([GLIBCXX_ENABLE_C99], [GLIBCXX_CHECK_C99_TR1]):
+ Use -std=c++98 instead of the default -std=gnu++98.
+ * configure: Regenerate.
+
2007-11-08 Paolo Carlini <pcarlini@suse.de>
* config/io/basic_file_stdio.cc (fopen_mode): Add modes missing
diff --git a/libstdc++-v3/acinclude.m4 b/libstdc++-v3/acinclude.m4
index 2ca902fcd83..b85a2a8f1a3 100644
--- a/libstdc++-v3/acinclude.m4
+++ b/libstdc++-v3/acinclude.m4
@@ -763,9 +763,13 @@ AC_DEFUN([GLIBCXX_ENABLE_C99], [
AC_LANG_SAVE
AC_LANG_CPLUSPLUS
- # Use -fno-exceptions so that the C driver can link these tests without
- # hitting undefined references to personality routines.
+ # Use -std=c++98 because the default (-std=gnu++98) leaves __STRICT_ANSI__
+ # undefined and fake C99 facilities - like pre-standard snprintf - may be
+ # spuriously enabled.
+ # Long term, -std=c++0x could be even better, could manage to explicitely
+ # request C99 facilities to the underlying C headers.
ac_save_CXXFLAGS="$CXXFLAGS"
+ CXXFLAGS="$CXXFLAGS -std=c++98"
ac_save_LIBS="$LIBS"
ac_save_gcc_no_link="$gcc_no_link"
@@ -996,6 +1000,11 @@ AC_DEFUN([GLIBCXX_CHECK_C99_TR1], [
AC_LANG_SAVE
AC_LANG_CPLUSPLUS
+ # Use -std=c++98 because the default (-std=gnu++98) leaves __STRICT_ANSI__
+ # undefined and fake C99 facilities may be spuriously enabled.
+ ac_save_CXXFLAGS="$CXXFLAGS"
+ CXXFLAGS="$CXXFLAGS -std=c++98"
+
# Check for the existence of <complex.h> complex math functions used
# by tr1/complex.
AC_CHECK_HEADERS(complex.h, ac_has_complex_h=yes, ac_has_complex_h=no)
@@ -1266,6 +1275,7 @@ AC_DEFUN([GLIBCXX_CHECK_C99_TR1], [
# Check for the existence of the <stdbool.h> header.
AC_CHECK_HEADERS(stdbool.h)
+ CXXFLAGS="$ac_save_CXXFLAGS"
AC_LANG_RESTORE
])
diff --git a/libstdc++-v3/configure b/libstdc++-v3/configure
index 96ca8bb1665..5e57fd651c6 100755
--- a/libstdc++-v3/configure
+++ b/libstdc++-v3/configure
@@ -15436,9 +15436,13 @@ ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ex
ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
- # Use -fno-exceptions so that the C driver can link these tests without
- # hitting undefined references to personality routines.
+ # Use -std=c++98 because the default (-std=gnu++98) leaves __STRICT_ANSI__
+ # undefined and fake C99 facilities - like pre-standard snprintf - may be
+ # spuriously enabled.
+ # Long term, -std=c++0x could be even better, could manage to explicitely
+ # request C99 facilities to the underlying C headers.
ac_save_CXXFLAGS="$CXXFLAGS"
+ CXXFLAGS="$CXXFLAGS -std=c++98"
ac_save_LIBS="$LIBS"
ac_save_gcc_no_link="$gcc_no_link"
@@ -17778,7 +17782,7 @@ ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
# Fake what AC_TRY_COMPILE does. XXX Look at redoing this new-style.
cat > conftest.$ac_ext << EOF
-#line 17781 "configure"
+#line 17785 "configure"
int main()
{
// NB: _Atomic_word not necessarily int.
@@ -39527,6 +39531,11 @@ ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ex
ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
+ # Use -std=c++98 because the default (-std=gnu++98) leaves __STRICT_ANSI__
+ # undefined and fake C99 facilities may be spuriously enabled.
+ ac_save_CXXFLAGS="$CXXFLAGS"
+ CXXFLAGS="$CXXFLAGS -std=c++98"
+
# Check for the existence of <complex.h> complex math functions used
# by tr1/complex.
@@ -40544,6 +40553,7 @@ fi
done
+ CXXFLAGS="$ac_save_CXXFLAGS"
ac_ext=c
ac_cpp='$CPP $CPPFLAGS'
ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'