From 50b840ac5e1d6534e345c3fee9a97ae45ced6bc7 Mon Sep 17 00:00:00 2001 From: Jonathan Wakely Date: Thu, 5 Nov 2020 13:41:40 +0000 Subject: [PATCH] libstdc++: Export basic_stringbuf constructor [PR 97729] libstdc++-v3/ChangeLog: PR libstdc++/97729 * config/abi/pre/gnu.ver (GLIBCXX_3.4.29): Add exports. * src/c++20/sstream-inst.cc (basic_stringbuf): Instantiate private constructor taking __xfer_bufptrs. --- libstdc++-v3/config/abi/pre/gnu.ver | 1 + libstdc++-v3/src/c++20/sstream-inst.cc | 6 ++++++ 2 files changed, 7 insertions(+) diff --git a/libstdc++-v3/config/abi/pre/gnu.ver b/libstdc++-v3/config/abi/pre/gnu.ver index 707539a17c3..ed68ffa2872 100644 --- a/libstdc++-v3/config/abi/pre/gnu.ver +++ b/libstdc++-v3/config/abi/pre/gnu.ver @@ -2346,6 +2346,7 @@ GLIBCXX_3.4.29 { # basic_stringbuf::basic_stringbuf(basic_stringbuf&&, allocator const&) _ZNSt7__cxx1115basic_stringbufI[cw]St11char_traitsI[cw]ESaI[cw]EEC[12]EOS4_RKS3_; + _ZNSt7__cxx1115basic_stringbufI[cw]St11char_traitsI[cw]ESaI[cw]EEC[12]EOS4_RKS3_ONS4_14__xfer_bufptrsE; # basic_stringbuf::get_allocator() _ZNKSt7__cxx1115basic_stringbufI[cw]St11char_traitsI[cw]ESaI[cw]EE13get_allocatorEv; diff --git a/libstdc++-v3/src/c++20/sstream-inst.cc b/libstdc++-v3/src/c++20/sstream-inst.cc index ada3eabac1f..7d275de5cc2 100644 --- a/libstdc++-v3/src/c++20/sstream-inst.cc +++ b/libstdc++-v3/src/c++20/sstream-inst.cc @@ -41,6 +41,9 @@ template basic_stringbuf::basic_stringbuf(__string_type&&, ios_base::openmode); template basic_stringbuf::basic_stringbuf(basic_stringbuf&&, const allocator_type&); +template basic_stringbuf::basic_stringbuf(basic_stringbuf&&, + const allocator_type&, + __xfer_bufptrs&&); template basic_stringbuf::allocator_type basic_stringbuf::get_allocator() const noexcept; template string_view @@ -75,6 +78,9 @@ template basic_stringbuf::basic_stringbuf(__string_type&&, ios_base::openmode); template basic_stringbuf::basic_stringbuf(basic_stringbuf&&, const allocator_type&); +template basic_stringbuf::basic_stringbuf(basic_stringbuf&&, + const allocator_type&, + __xfer_bufptrs&&); template basic_stringbuf::allocator_type basic_stringbuf::get_allocator() const noexcept; -- 2.30.2