Commit acd8b8dc by Rainer Orth Committed by Rainer Orth

Require C11 for C++17 on Solaris

	* config/sol2.h (TARGET_OS_CPP_BUILTINS): Define __STDC_VERSION__
	to 201112L since C++17.

From-SVN: r244430
parent b7aa844d
2017-01-13 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
* config/sol2.h (TARGET_OS_CPP_BUILTINS): Define __STDC_VERSION__
to 201112L since C++17.
2017-01-13 Maxim Ostapenko <m.ostapenko@samsung.com> 2017-01-13 Maxim Ostapenko <m.ostapenko@samsung.com>
PR sanitizer/78887 PR sanitizer/78887
......
...@@ -82,26 +82,41 @@ along with GCC; see the file COPYING3. If not see ...@@ -82,26 +82,41 @@ along with GCC; see the file COPYING3. If not see
/* Names to predefine in the preprocessor for this target machine. */ /* Names to predefine in the preprocessor for this target machine. */
#define TARGET_SUB_OS_CPP_BUILTINS() #define TARGET_SUB_OS_CPP_BUILTINS()
#define TARGET_OS_CPP_BUILTINS() \ #define TARGET_OS_CPP_BUILTINS() \
do { \ do { \
builtin_define_std ("unix"); \ builtin_define_std ("unix"); \
builtin_define_std ("sun"); \ builtin_define_std ("sun"); \
builtin_define ("__svr4__"); \ builtin_define ("__svr4__"); \
builtin_define ("__SVR4"); \ builtin_define ("__SVR4"); \
builtin_assert ("system=unix"); \ builtin_assert ("system=unix"); \
builtin_assert ("system=svr4"); \ builtin_assert ("system=svr4"); \
/* For C++ we need to add some additional macro \ /* For C++ we need to add some additional macro \
definitions required by the C++ standard \ definitions required by the C++ standard \
library. */ \ library. */ \
if (c_dialect_cxx ()) \ if (c_dialect_cxx ()) \
{ \
switch (cxx_dialect) \
{ \ { \
case cxx98: \
case cxx11: \
case cxx14: \
/* C++11 and C++14 are based on C99. \
libstdc++ makes use of C99 features \
even for C++98. */ \
builtin_define ("__STDC_VERSION__=199901L");\ builtin_define ("__STDC_VERSION__=199901L");\
builtin_define ("_XOPEN_SOURCE=600"); \ break; \
builtin_define ("_LARGEFILE_SOURCE=1"); \ \
builtin_define ("_LARGEFILE64_SOURCE=1"); \ default: \
builtin_define ("__EXTENSIONS__"); \ /* C++17 is based on C11. */ \
builtin_define ("__STDC_VERSION__=201112L");\
break; \
} \ } \
TARGET_SUB_OS_CPP_BUILTINS(); \ builtin_define ("_XOPEN_SOURCE=600"); \
} while (0) builtin_define ("_LARGEFILE_SOURCE=1"); \
builtin_define ("_LARGEFILE64_SOURCE=1"); \
builtin_define ("__EXTENSIONS__"); \
} \
TARGET_SUB_OS_CPP_BUILTINS(); \
} while (0)
#define SUBTARGET_OVERRIDE_OPTIONS \ #define SUBTARGET_OVERRIDE_OPTIONS \
do { \ do { \
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment