OSDN Git Service

2008-04-28 Benjamin Kosnik <bkoz@redhat.com>
authorbkoz <bkoz@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 29 Apr 2008 05:45:00 +0000 (05:45 +0000)
committerbkoz <bkoz@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 29 Apr 2008 05:45:00 +0000 (05:45 +0000)
* include/bits/c++config: Move os_defines and cpu_defines after
namespace definitions and base macros.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@134779 138bc75d-0d04-0410-961f-82ee72b054a4

libstdc++-v3/ChangeLog
libstdc++-v3/include/bits/c++config

index 18d308d..87f0c6f 100644 (file)
@@ -1,5 +1,10 @@
 2008-04-28  Benjamin Kosnik  <bkoz@redhat.com>
 
+       * include/bits/c++config: Move os_defines and cpu_defines after
+       namespace definitions and base macros.
+
+2008-04-28  Benjamin Kosnik  <bkoz@redhat.com>
+
        PR libstdc++/35887
        * acinclude.m4 (GLIBCXX_ENABLE_PARALLEL): Revert back to just
        checking for omp.h.
index 498bc32..7b2ce77 100644 (file)
 #ifndef _GLIBCXX_CXX_CONFIG_H
 #define _GLIBCXX_CXX_CONFIG_H 1
 
-// Pick up any OS-specific definitions.
-#include <bits/os_defines.h>
-
-// Pick up any CPU-specific definitions.
-#include <bits/cpu_defines.h>
-
 // The current version of the C++ library in compressed ISO date format.
 #define __GLIBCXX__ 
 
@@ -216,6 +210,28 @@ namespace std
 }
 #endif
 
+// XXX GLIBCXX_ABI Deprecated
+// Define if compatibility should be provided for -mlong-double-64
+#if defined __cplusplus && defined __LONG_DOUBLE_128__ 
+# undef _GLIBCXX_LONG_DOUBLE_COMPAT
+#endif
+
+// Namespace associations for long double 128 mode.
+#ifdef _GLIBCXX_LONG_DOUBLE_COMPAT
+namespace std
+{
+  inline namespace __gnu_cxx_ldbl128 { }
+}
+# define _GLIBCXX_LDBL_NAMESPACE __gnu_cxx_ldbl128::
+# define _GLIBCXX_BEGIN_LDBL_NAMESPACE namespace __gnu_cxx_ldbl128 {
+# define _GLIBCXX_END_LDBL_NAMESPACE }
+#else
+# define _GLIBCXX_LDBL_NAMESPACE
+# define _GLIBCXX_BEGIN_LDBL_NAMESPACE
+# define _GLIBCXX_END_LDBL_NAMESPACE
+#endif
+
+
 // Defines for C compatibility. In particular, define extern "C"
 // linkage only when using  C++, same with namespaces.
 #if __cplusplus
@@ -230,25 +246,13 @@ namespace std
 # define _GLIBCXX_END_NAMESPACE 
 #endif
 
-// Define if compatibility should be provided for -mlong-double-64.
-#undef _GLIBCXX_LONG_DOUBLE_COMPAT
+// First includes.
 
-// XXX GLIBCXX_ABI Deprecated
-// Namespace associations for long double 128 mode.
-_GLIBCXX_BEGIN_NAMESPACE(std)
-#if defined _GLIBCXX_LONG_DOUBLE_COMPAT && defined __LONG_DOUBLE_128__ \
-  && defined __cplusplus
-# define _GLIBCXX_LDBL_NAMESPACE __gnu_cxx_ldbl128::
-# define _GLIBCXX_BEGIN_LDBL_NAMESPACE namespace __gnu_cxx_ldbl128 {
-# define _GLIBCXX_END_LDBL_NAMESPACE }
-  inline namespace __gnu_cxx_ldbl128 { }
-#else
-# define _GLIBCXX_LDBL_NAMESPACE
-# define _GLIBCXX_BEGIN_LDBL_NAMESPACE
-# define _GLIBCXX_END_LDBL_NAMESPACE
-#endif
-_GLIBCXX_END_NAMESPACE
+// Pick up any OS-specific definitions.
+#include <bits/os_defines.h>
 
+// Pick up any CPU-specific definitions.
+#include <bits/cpu_defines.h>
 
 // Allow use of "export template." This is currently not a feature
 // that g++ supports.
@@ -264,7 +268,6 @@ _GLIBCXX_END_NAMESPACE
 # define _GLIBCXX_EXTERN_TEMPLATE 1
 #endif
 
-
 // Certain function definitions that are meant to be overridable from
 // user code are decorated with this macro.  For some targets, this
 // macro causes these definitions to be weak.
@@ -272,14 +275,6 @@ _GLIBCXX_END_NAMESPACE
 # define _GLIBCXX_WEAK_DEFINITION
 #endif
 
-// Macro used to indicate that the native "C" includes, when compiled
-// as "C++", have declarations in namespace std and not the global
-// namespace. Note, this is unrelated to possible "C" compatibility
-// includes that inject C90/C99 names into the global namespace.
-#if __cplusplus == 199711L
-# define _GLIBCXX_NAMESPACE_GLOBAL_INJECTION 1
-#endif
-
 // The remainder of the prewritten config is automatic; all the
 // user hooks are listed above.