summaryrefslogtreecommitdiff
path: root/libstdc++-v3
diff options
context:
space:
mode:
authorbkoz <bkoz@138bc75d-0d04-0410-961f-82ee72b054a4>2007-03-26 10:41:41 +0000
committerbkoz <bkoz@138bc75d-0d04-0410-961f-82ee72b054a4>2007-03-26 10:41:41 +0000
commit054432c597a8345dae0417ebfe6ed7369cb04249 (patch)
tree1f12eb6605b2c844cddddc22b3125023c374596e /libstdc++-v3
parent4e9abdcc8c9f81e9978cae85f20ac3f15e88c5de (diff)
downloadgcc-054432c597a8345dae0417ebfe6ed7369cb04249.tar.gz
2007-03-26 Benjamin Kosnik <bkoz@redhat.com>
* include/c_compatibility/complex.h: Without __GXX_EXPERIMENTAL_CXX0X__ include_next complex.h. * include/c_compatibility/fenv.h: Same. * include/c_compatibility/inttypes.h: Same. * include/c_compatibility/stdbool.h: Same. * include/c_compatibility/stdint.h: Same. * include/c_compatibility/tgmath.h: Same. * include/tr1/cinttypes: Use include_next. * include/tr1/cstdint: Same. * include/tr1/cstdbool: Same. * acinclude.m4 (GLIBCXX_ENABLE_C99): Add check for tgmath.h * configure: Regenerate. * config.h.in: Same. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@123214 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libstdc++-v3')
-rw-r--r--libstdc++-v3/ChangeLog18
-rw-r--r--libstdc++-v3/acinclude.m41
-rw-r--r--libstdc++-v3/config.h.in3
-rwxr-xr-xlibstdc++-v3/configure154
-rw-r--r--libstdc++-v3/include/c_compatibility/complex.h10
-rw-r--r--libstdc++-v3/include/c_compatibility/fenv.h10
-rw-r--r--libstdc++-v3/include/c_compatibility/inttypes.h10
-rw-r--r--libstdc++-v3/include/c_compatibility/stdbool.h10
-rw-r--r--libstdc++-v3/include/c_compatibility/stdint.h10
-rw-r--r--libstdc++-v3/include/c_compatibility/tgmath.h10
-rw-r--r--libstdc++-v3/include/tr1/cinttypes4
-rw-r--r--libstdc++-v3/include/tr1/cstdbool4
-rw-r--r--libstdc++-v3/include/tr1/cstdint4
13 files changed, 235 insertions, 13 deletions
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index 8a9ccd3e580..5bf125a038b 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,3 +1,21 @@
+2007-03-26 Benjamin Kosnik <bkoz@redhat.com>
+
+ * include/c_compatibility/complex.h: Without
+ __GXX_EXPERIMENTAL_CXX0X__ include_next complex.h.
+ * include/c_compatibility/fenv.h: Same.
+ * include/c_compatibility/inttypes.h: Same.
+ * include/c_compatibility/stdbool.h: Same.
+ * include/c_compatibility/stdint.h: Same.
+ * include/c_compatibility/tgmath.h: Same.
+
+ * include/tr1/cinttypes: Use include_next.
+ * include/tr1/cstdint: Same.
+ * include/tr1/cstdbool: Same.
+
+ * acinclude.m4 (GLIBCXX_ENABLE_C99): Add check for tgmath.h
+ * configure: Regenerate.
+ * config.h.in: Same.
+
2007-03-25 Paolo Carlini <pcarlini@suse.de>
* include/tr1/functional: Formatting fixes.
diff --git a/libstdc++-v3/acinclude.m4 b/libstdc++-v3/acinclude.m4
index f40845dfa18..18d1840ceb2 100644
--- a/libstdc++-v3/acinclude.m4
+++ b/libstdc++-v3/acinclude.m4
@@ -795,6 +795,7 @@ AC_DEFUN([GLIBCXX_ENABLE_C99], [
# This is necessary even though libstdc++ uses the builtin versions
# of these functions, because if the builtin cannot be used, a reference
# to the library function is emitted.
+ AC_CHECK_HEADERS(tgmath.h, ac_has_tgmath_h=yes, ac_has_tgmath_h=no)
AC_CHECK_HEADERS(complex.h, ac_has_complex_h=yes, ac_has_complex_h=no)
ac_c99_complex=no;
if test x"$ac_has_complex_h" = x"yes"; then
diff --git a/libstdc++-v3/config.h.in b/libstdc++-v3/config.h.in
index ceb08fad428..a87d23d88d5 100644
--- a/libstdc++-v3/config.h.in
+++ b/libstdc++-v3/config.h.in
@@ -355,6 +355,9 @@
/* Define to 1 if you have the `tanl' function. */
#undef HAVE_TANL
+/* Define to 1 if you have the <tgmath.h> header file. */
+#undef HAVE_TGMATH_H
+
/* Define to 1 if the target supports thread-local storage. */
#undef HAVE_TLS
diff --git a/libstdc++-v3/configure b/libstdc++-v3/configure
index d60c747e024..55069241e78 100755
--- a/libstdc++-v3/configure
+++ b/libstdc++-v3/configure
@@ -7129,6 +7129,158 @@ _ACEOF
# of these functions, because if the builtin cannot be used, a reference
# to the library function is emitted.
+for ac_header in tgmath.h
+do
+as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
+if eval "test \"\${$as_ac_Header+set}\" = set"; then
+ echo "$as_me:$LINENO: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
+if eval "test \"\${$as_ac_Header+set}\" = set"; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+fi
+echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
+else
+ # Is the header compilable?
+echo "$as_me:$LINENO: checking $ac_header usability" >&5
+echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+$ac_includes_default
+#include <$ac_header>
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } &&
+ { ac_try='test -z "$ac_cxx_werror_flag"
+ || test ! -s conftest.err'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; } &&
+ { ac_try='test -s conftest.$ac_objext'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ ac_header_compiler=yes
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ac_header_compiler=no
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
+echo "${ECHO_T}$ac_header_compiler" >&6
+
+# Is the header present?
+echo "$as_me:$LINENO: checking $ac_header presence" >&5
+echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#include <$ac_header>
+_ACEOF
+if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
+ (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } >/dev/null; then
+ if test -s conftest.err; then
+ ac_cpp_err=$ac_cxx_preproc_warn_flag
+ ac_cpp_err=$ac_cpp_err$ac_cxx_werror_flag
+ else
+ ac_cpp_err=
+ fi
+else
+ ac_cpp_err=yes
+fi
+if test -z "$ac_cpp_err"; then
+ ac_header_preproc=yes
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_header_preproc=no
+fi
+rm -f conftest.err conftest.$ac_ext
+echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
+echo "${ECHO_T}$ac_header_preproc" >&6
+
+# So? What about this header?
+case $ac_header_compiler:$ac_header_preproc:$ac_cxx_preproc_warn_flag in
+ yes:no: )
+ { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
+echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
+echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
+ ac_header_preproc=yes
+ ;;
+ no:yes:* )
+ { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
+echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5
+echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
+echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5
+echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
+echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5
+echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
+ (
+ cat <<\_ASBOX
+## ----------------------------------------- ##
+## Report this to the package-unused lists. ##
+## ----------------------------------------- ##
+_ASBOX
+ ) |
+ sed "s/^/$as_me: WARNING: /" >&2
+ ;;
+esac
+echo "$as_me:$LINENO: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
+if eval "test \"\${$as_ac_Header+set}\" = set"; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ eval "$as_ac_Header=\$ac_header_preproc"
+fi
+echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
+
+fi
+if test `eval echo '${'$as_ac_Header'}'` = yes; then
+ cat >>confdefs.h <<_ACEOF
+#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
+_ACEOF
+ ac_has_tgmath_h=yes
+else
+ ac_has_tgmath_h=no
+fi
+
+done
+
+
for ac_header in complex.h
do
as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
@@ -8029,7 +8181,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 8032 "configure"
+#line 8184 "configure"
int main()
{
// NB: _Atomic_word not necessarily int.
diff --git a/libstdc++-v3/include/c_compatibility/complex.h b/libstdc++-v3/include/c_compatibility/complex.h
index 88acb1eebee..8ddb5797733 100644
--- a/libstdc++-v3/include/c_compatibility/complex.h
+++ b/libstdc++-v3/include/c_compatibility/complex.h
@@ -31,7 +31,15 @@
* This is a Standard C++ Library header.
*/
-#include <ccomplex>
+#include <bits/c++config.h>
+
+#ifdef __GXX_EXPERIMENTAL_CXX0X__
+# include <ccomplex>
+#else
+# if _GLIBCXX_HAVE_COMPLEX_H
+# include_next <complex.h>
+# endif
+#endif
#ifndef _GLIBCXX_COMPLEX_H
#define _GLIBCXX_COMPLEX_H 1
diff --git a/libstdc++-v3/include/c_compatibility/fenv.h b/libstdc++-v3/include/c_compatibility/fenv.h
index c3eb4b4abce..44661d72c02 100644
--- a/libstdc++-v3/include/c_compatibility/fenv.h
+++ b/libstdc++-v3/include/c_compatibility/fenv.h
@@ -31,7 +31,15 @@
* This is a Standard C++ Library header.
*/
-#include <cfenv>
+#include <bits/c++config.h>
+
+#ifdef __GXX_EXPERIMENTAL_CXX0X__
+# include <cfenv>
+#else
+# if _GLIBCXX_HAVE_FENV_H
+# include_next <fenv.h>
+# endif
+#endif
#ifndef _GLIBCXX_FENV_H
#define _GLIBCXX_FENV_H 1
diff --git a/libstdc++-v3/include/c_compatibility/inttypes.h b/libstdc++-v3/include/c_compatibility/inttypes.h
index d6eebdf6606..562d0aa9063 100644
--- a/libstdc++-v3/include/c_compatibility/inttypes.h
+++ b/libstdc++-v3/include/c_compatibility/inttypes.h
@@ -31,7 +31,15 @@
* This is a Standard C++ Library header.
*/
-#include <cinttypes>
+#include <bits/c++config.h>
+
+#ifdef __GXX_EXPERIMENTAL_CXX0X__
+# include <cinttypes>
+#else
+# if _GLIBCXX_HAVE_INTTYPES_H
+# include_next <inttypes.h>
+# endif
+#endif
#ifndef _GLIBCXX_INTTYPES_H
#define _GLIBCXX_INTTYPES_H 1
diff --git a/libstdc++-v3/include/c_compatibility/stdbool.h b/libstdc++-v3/include/c_compatibility/stdbool.h
index a825d4fd365..194926920d0 100644
--- a/libstdc++-v3/include/c_compatibility/stdbool.h
+++ b/libstdc++-v3/include/c_compatibility/stdbool.h
@@ -31,7 +31,15 @@
* This is a Standard C++ Library header.
*/
-#include <cstdbool>
+#include <bits/c++config.h>
+
+#ifdef __GXX_EXPERIMENTAL_CXX0X__
+# include <cstdbool>
+#else
+# if _GLIBCXX_HAVE_STDBOOL_H
+# include_next <stdbool.h>
+# endif
+#endif
#ifndef _GLIBCXX_STDBOOL_H
#define _GLIBCXX_STDBOOL_H 1
diff --git a/libstdc++-v3/include/c_compatibility/stdint.h b/libstdc++-v3/include/c_compatibility/stdint.h
index 359986f8ade..c59a1cd76db 100644
--- a/libstdc++-v3/include/c_compatibility/stdint.h
+++ b/libstdc++-v3/include/c_compatibility/stdint.h
@@ -31,7 +31,15 @@
* This is a Standard C++ Library header.
*/
-#include <cstdint>
+#include <bits/c++config.h>
+
+#ifdef __GXX_EXPERIMENTAL_CXX0X__
+# include <cstdint>
+#else
+# if _GLIBCXX_HAVE_STDINT_H
+# include_next <stdint.h>
+# endif
+#endif
#ifndef _GLIBCXX_STDINT_H
#define _GLIBCXX_STDINT_H 1
diff --git a/libstdc++-v3/include/c_compatibility/tgmath.h b/libstdc++-v3/include/c_compatibility/tgmath.h
index b2ce8b54328..baf495f4d83 100644
--- a/libstdc++-v3/include/c_compatibility/tgmath.h
+++ b/libstdc++-v3/include/c_compatibility/tgmath.h
@@ -31,7 +31,15 @@
* This is a Standard C++ Library header.
*/
-#include <ctgmath>
+#include <bits/c++config.h>
+
+#ifdef __GXX_EXPERIMENTAL_CXX0X__
+# include <ctgmath>
+#else
+# if _GLIBCXX_HAVE_TGMATH_H
+# include_next <tgmath.h>
+# endif
+#endif
#ifndef _GLIBCXX_TGMATH_H
#define _GLIBCXX_TGMATH_H 1
diff --git a/libstdc++-v3/include/tr1/cinttypes b/libstdc++-v3/include/tr1/cinttypes
index 398ab1d2e18..e2d2fcdc163 100644
--- a/libstdc++-v3/include/tr1/cinttypes
+++ b/libstdc++-v3/include/tr1/cinttypes
@@ -1,6 +1,6 @@
// TR1 cinttypes -*- C++ -*-
-// Copyright (C) 2006 Free Software Foundation, Inc.
+// Copyright (C) 2006, 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -41,7 +41,7 @@
// For 8.11.1/1 (see C99, Note 184)
#define __STDC_FORMAT_MACROS
-#include <inttypes.h>
+#include_next <inttypes.h>
// namespace std::tr1
namespace std
diff --git a/libstdc++-v3/include/tr1/cstdbool b/libstdc++-v3/include/tr1/cstdbool
index 2406f9e28f0..939f2c71530 100644
--- a/libstdc++-v3/include/tr1/cstdbool
+++ b/libstdc++-v3/include/tr1/cstdbool
@@ -1,6 +1,6 @@
// TR1 cstdbool -*- C++ -*-
-// Copyright (C) 2006 Free Software Foundation, Inc.
+// Copyright (C) 2006, 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -37,7 +37,7 @@
#include <bits/c++config.h>
#if _GLIBCXX_HAVE_STDBOOL_H
-#include <stdbool.h>
+#include_next <stdbool.h>
#endif
#endif
diff --git a/libstdc++-v3/include/tr1/cstdint b/libstdc++-v3/include/tr1/cstdint
index a8dce52245f..56fa3083bf3 100644
--- a/libstdc++-v3/include/tr1/cstdint
+++ b/libstdc++-v3/include/tr1/cstdint
@@ -1,6 +1,6 @@
// TR1 cstdint -*- C++ -*-
-// Copyright (C) 2006 Free Software Foundation, Inc.
+// Copyright (C) 2006, 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -41,7 +41,7 @@
// For 8.22.1/1 (see C99, Notes 219, 220, 222)
#define __STDC_LIMIT_MACROS
#define __STDC_CONSTANT_MACROS
-#include <stdint.h>
+#include_next <stdint.h>
// namespace std::tr1
namespace std