Give more explicit errors if these files are not built with the correct -std options.
libstdc++-v3/ChangeLog: * src/c++98/locale_init.cc: Require C++11. * src/c++98/localename.cc: Likewise. * src/c++98/misc-inst.cc: Require C++98. Tested powerpc64le-linux. Committed to trunk.
commit d3a7fbcb7c7a1016ceac2ceaf79b28c17ce9fcd7 Author: Jonathan Wakely <jwak...@redhat.com> Date: Thu Aug 12 13:33:43 2021 libstdc++: Add #error to some files that depend on a specific standard mode Give more explicit errors if these files are not built with the correct -std options. libstdc++-v3/ChangeLog: * src/c++98/locale_init.cc: Require C++11. * src/c++98/localename.cc: Likewise. * src/c++98/misc-inst.cc: Require C++98. diff --git a/libstdc++-v3/src/c++98/locale_init.cc b/libstdc++-v3/src/c++98/locale_init.cc index 4bec50bf595..e96b1a336aa 100644 --- a/libstdc++-v3/src/c++98/locale_init.cc +++ b/libstdc++-v3/src/c++98/locale_init.cc @@ -20,6 +20,10 @@ // see the files COPYING3 and COPYING.RUNTIME respectively. If not, see // <http://www.gnu.org/licenses/>. +#if __cplusplus != 201103L +# error This file must be compiled as C++11 +#endif + #define _GLIBCXX_USE_CXX11_ABI 1 #include <clocale> #include <cstring> diff --git a/libstdc++-v3/src/c++98/localename.cc b/libstdc++-v3/src/c++98/localename.cc index 350dcf5ad0f..9c707b2327c 100644 --- a/libstdc++-v3/src/c++98/localename.cc +++ b/libstdc++-v3/src/c++98/localename.cc @@ -20,6 +20,10 @@ // see the files COPYING3 and COPYING.RUNTIME respectively. If not, see // <http://www.gnu.org/licenses/>. +#if __cplusplus != 201103L +# error This file must be compiled as C++11 +#endif + #define _GLIBCXX_USE_CXX11_ABI 1 #include <clocale> #include <cstring> diff --git a/libstdc++-v3/src/c++98/misc-inst.cc b/libstdc++-v3/src/c++98/misc-inst.cc index 09851903600..85a4287e113 100644 --- a/libstdc++-v3/src/c++98/misc-inst.cc +++ b/libstdc++-v3/src/c++98/misc-inst.cc @@ -26,6 +26,10 @@ // ISO C++ 14882: // +#if __cplusplus != 199711L +# error This file must be compiled as C++98 +#endif + #define _GLIBCXX_USE_CXX11_ABI 1 #define _GLIBCXX_DISAMBIGUATE_REPLACE_INST 1 #include <string>