about summary refs log tree commit diff
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@gmail.com>2011-12-23 23:20:07 -0500
committerUlrich Drepper <drepper@gmail.com>2012-01-01 07:17:20 -0500
commit8fd8ff3bd8234593a694be045460e471d295a6af (patch)
tree3adf6dcac110a640bad6c591a95a9b25c65c334b
parent03a718297d64e68efb36069b0cc14c1039f32d89 (diff)
downloadglibc-8fd8ff3bd8234593a694be045460e471d295a6af.tar.gz
glibc-8fd8ff3bd8234593a694be045460e471d295a6af.tar.xz
glibc-8fd8ff3bd8234593a694be045460e471d295a6af.zip
Add __USE_ISOCXX11
-rw-r--r--ChangeLog3
-rw-r--r--include/features.h10
2 files changed, 13 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 6be3d32698..c3483c8535 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -28,6 +28,9 @@
 
 2011-12-23  Ulrich Drepper  <drepper@gmail.com>
 
+	* include/features.h: Define __USE_ISOCXX11 when compiling ISo C++11
+	code.
+
 	[BZ #13528]
 	* libio/stdio.h: Do not declare gets for ISO C11 and _GNU_SOURCE.
 
diff --git a/include/features.h b/include/features.h
index b02ff750d3..173afc1c93 100644
--- a/include/features.h
+++ b/include/features.h
@@ -100,6 +100,7 @@
 #undef	__USE_ISOC11
 #undef	__USE_ISOC99
 #undef	__USE_ISOC95
+#undef	__USE_ISOCXX11
 #undef	__USE_POSIX
 #undef	__USE_POSIX2
 #undef	__USE_POSIX199309
@@ -206,6 +207,15 @@
 # define __USE_ISOC95	1
 #endif
 
+/* This is to enable compatibility for ISO C++11.
+
+   So far g++ does not provide a macro.  Check the temporary macro for
+   now, too.  */
+#if ((defined __cplusplus && __cplusplus >= 201103L)			      \
+     || defined __GXX_EXPERIMENTAL_CXX0X__)
+# define __USE_ISOCXX11	1
+#endif
+
 /* If none of the ANSI/POSIX macros are defined, use POSIX.1 and POSIX.2
    (and IEEE Std 1003.1b-1993 unless _XOPEN_SOURCE is defined).  */
 #if ((!defined __STRICT_ANSI__ || (_XOPEN_SOURCE - 0) >= 500) && \