From 0124d2c5bb0ac41a6f3288b5f11861c127f13409 Mon Sep 17 00:00:00 2001 From: Jonathan Wakely Date: Mon, 12 Aug 2019 17:41:27 +0100 Subject: [PATCH] PR libstdc++/90361 add missing macro definition The src/c++17/string-inst.cc file needs to override the default string ABI so that it still contains the expected symbols even when the library is configured with --with-default-libstdcxx-abi=gcc4-compatible. PR libstdc++/90361 * src/c++17/string-inst.cc: Use _GLIBCXX_USE_CXX11_ABI=1 by default. From-SVN: r274314 --- libstdc++-v3/ChangeLog | 3 +++ libstdc++-v3/src/c++17/string-inst.cc | 6 ++++++ 2 files changed, 9 insertions(+) diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index 6c24ed68054..c6f5b1fbdbb 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,5 +1,8 @@ 2019-08-12 Jonathan Wakely + PR libstdc++/90361 + * src/c++17/string-inst.cc: Use _GLIBCXX_USE_CXX11_ABI=1 by default. + * include/std/tuple (__unpack_std_tuple): New variable template and partial specializations. (apply, make_from_tuple): Add noexcept-specifier. diff --git a/libstdc++-v3/src/c++17/string-inst.cc b/libstdc++-v3/src/c++17/string-inst.cc index c095a90587e..4dc0a9ca449 100644 --- a/libstdc++-v3/src/c++17/string-inst.cc +++ b/libstdc++-v3/src/c++17/string-inst.cc @@ -26,6 +26,12 @@ // ISO C++ 14882:2017 24 Strings library // +#ifndef _GLIBCXX_USE_CXX11_ABI +// Instantiations in this file use the new SSO std::string ABI unless included +// by another file which defines _GLIBCXX_USE_CXX11_ABI=0. +# define _GLIBCXX_USE_CXX11_ABI 1 +#endif + #include namespace std _GLIBCXX_VISIBILITY(default)