aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-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) && \