aboutsummaryrefslogtreecommitdiff
path: root/libstdc++-v3/src
diff options
context:
space:
mode:
authorJonathan Wakely <jwakely@redhat.com>2021-11-30 22:04:49 +0000
committerJonathan Wakely <jwakely@redhat.com>2021-11-30 23:10:03 +0000
commit56b07badf052fb140c4636f6d77cfc02d1ac357c (patch)
treebbf5ce6340d01c1eb6fb7ac10c9a9741653dd1f9 /libstdc++-v3/src
parent955ea7b58e4f1e3cc5083e88575161168c147254 (diff)
downloadgcc-56b07badf052fb140c4636f6d77cfc02d1ac357c.zip
gcc-56b07badf052fb140c4636f6d77cfc02d1ac357c.tar.gz
gcc-56b07badf052fb140c4636f6d77cfc02d1ac357c.tar.bz2
libstdc++: Ensure C++20 std::stringstream definitions use correct ABI
The definitions of the new C++20 members of std::stringstream etc are missing when --with-default-libstdcxx-abi=gcc4-compatible is used, because all the explicit instantiations in src/c++20/sstream-inst.cc are skipped. This ensures the contents of that file are compiled with the new ABI, so the same set of symbols are exported regardless of which ABI is active by default. libstdc++-v3/ChangeLog: * src/c++20/sstream-inst.cc (_GLIBCXX_USE_CXX11_ABI): Define to select new ABI.
Diffstat (limited to 'libstdc++-v3/src')
-rw-r--r--libstdc++-v3/src/c++20/sstream-inst.cc4
1 files changed, 3 insertions, 1 deletions
diff --git a/libstdc++-v3/src/c++20/sstream-inst.cc b/libstdc++-v3/src/c++20/sstream-inst.cc
index b3fbd6e..55d1fe5 100644
--- a/libstdc++-v3/src/c++20/sstream-inst.cc
+++ b/libstdc++-v3/src/c++20/sstream-inst.cc
@@ -26,7 +26,9 @@
// ISO C++ 14882:
//
-// Instantiations in this file are only for the new SSO std::string ABI
+// Instantiations in this file are only for the new SSO std::string ABI.
+#define _GLIBCXX_USE_CXX11_ABI 1
+
#include <sstream>
#if _GLIBCXX_USE_CXX11_ABI