aboutsummaryrefslogtreecommitdiff
path: root/libstdc++-v3/config/abi/pre/gnu.ver
diff options
context:
space:
mode:
authorJonathan Wakely <jwakely@redhat.com>2019-01-04 23:23:17 +0000
committerJonathan Wakely <redi@gcc.gnu.org>2019-01-04 23:23:17 +0000
commit4ff3e6509066e2832fdfe9987e7fd2f8719da93f (patch)
tree54527e7c8dc67c9cd50c70d5984fd46cef111975 /libstdc++-v3/config/abi/pre/gnu.ver
parent9069a4c95d7f4d30f1e2e9d25dc7bb11a9f0e982 (diff)
downloadgcc-4ff3e6509066e2832fdfe9987e7fd2f8719da93f.zip
gcc-4ff3e6509066e2832fdfe9987e7fd2f8719da93f.tar.gz
gcc-4ff3e6509066e2832fdfe9987e7fd2f8719da93f.tar.bz2
Add allocator-extended copy/move ctors to COW string
Add these constructors from C++11 which were missing from the COW basic_string. Additionally simplify the definitions of the basic_string::reference and basic_string::const_reference types as required by C++11. This allows filesystem::path::string<Allocator>() to be simplified, so that the same code is used for both basic_string implementations. * config/abi/pre/gnu.ver (GLIBCXX_3.4.26): Export allocator-extended copy/move constructors for old std::basic_string. * include/bits/basic_string.h [!_GLIBCXX_USE_CXX11_ABI] (basic_string::reference, basic_string::const_reference): Define as plain references for C++11 and later. (basic_string::basic_string()): Put constructor body outside preprocessor conditional groups. (basic_string::basic_string(basic_string&&)): Move _Alloc_hider instead of copying it. (basic_string::basic_string(const basic_string&, const _Alloc&)): Define. (basic_string::basic_string(basic_string&&, const _Alloc&)): Define. * include/bits/fs_path.h [!_GLIBCXX_USE_CXX11_ABI]: Remove special cases for old basic_string. * testsuite/21_strings/basic_string/cons/char/8.cc: Test allocator-extended constructors unconditionally. Add extra members to allocator type when using old string ABI. * testsuite/21_strings/basic_string/allocator/71964.cc: Enable test for old string ABI. * testsuite/21_strings/basic_string/cons/wchar_t/8.cc: Likewise. From-SVN: r267584
Diffstat (limited to 'libstdc++-v3/config/abi/pre/gnu.ver')
-rw-r--r--libstdc++-v3/config/abi/pre/gnu.ver5
1 files changed, 5 insertions, 0 deletions
diff --git a/libstdc++-v3/config/abi/pre/gnu.ver b/libstdc++-v3/config/abi/pre/gnu.ver
index de3c87a..1d15728 100644
--- a/libstdc++-v3/config/abi/pre/gnu.ver
+++ b/libstdc++-v3/config/abi/pre/gnu.ver
@@ -2072,6 +2072,11 @@ GLIBCXX_3.4.26 {
_ZNSt14collate_bynameI[cw]EC[12]ERKSs[jmy];
_ZNKSt8time_getI[cw]St19istreambuf_iteratorI[cw]St11char_traitsI[cw]EEE3getES3_S3_RSt8ios_baseRSt12_Ios_IostateP2tmcc;
+ _ZNSsC[12]ERKSsRKSaIcE;
+ _ZNSsC[12]EOSsRKSaIcE;
+ _ZNSbIwSt11char_traitsIwESaIwEEC[12]ERKS2_RKS1_;
+ _ZNSbIwSt11char_traitsIwESaIwEEC[12]EOS2_RKS1_;
+
} GLIBCXX_3.4.25;
# Symbols in the support library (libsupc++) have their own tag.