From b80e6d97a9e2425f2a8b97a436335e0abf9105db Mon Sep 17 00:00:00 2001 From: Olivier Hainque Date: Sat, 11 Dec 2021 08:46:08 +0000 Subject: [PATCH] Ensure VxWorks headers expose C99 features for C++ C++ relies on C99 features since C++11 and libstdc++ down to c++98 checks for C99 features at configure time. Simpler is to request C99 features from system headers unconditionally. 2021-12-11 Olivier Hainque * config/vxworks.h (VXWORKS_OS_CPP_BUILTINS): Define _C99 for C++. --- gcc/config/vxworks.h | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/gcc/config/vxworks.h b/gcc/config/vxworks.h index a89e3d6..f76141f 100644 --- a/gcc/config/vxworks.h +++ b/gcc/config/vxworks.h @@ -286,6 +286,12 @@ extern void vxworks_asm_out_destructor (rtx symbol, int priority); if (!flag_isoc99 && !c_dialect_cxx()) \ builtin_define ("_ALLOW_KEYWORD_MACROS"); \ } \ + /* C++ support relies on C99 features from C++11, even C++98 \ + for listdc++ in particular, with corresponding checks at \ + configure time. Make sure C99 features are exposed by the \ + system headers. */ \ + if (c_dialect_cxx()) \ + builtin_define("_C99"); \ } \ while (0) -- 2.7.4