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.
Tested powerpc64le-linux. Committed to trunk.
commit 50b840ac5e1d6534e345c3fee9a97ae45ced6bc7
Author: Jonathan Wakely <[email protected]>
Date: Thu Nov 5 13:41:40 2020
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.
diff --git a/libstdc++-v3/config/abi/pre/gnu.ver
b/libstdc++-v3/config/abi/pre/gnu.ver
index 707539a17c3a..ed68ffa28723 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 ada3eabac1f5..7d275de5cc24 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<char>::basic_stringbuf(__string_type&&,
ios_base::openmode);
template basic_stringbuf<char>::basic_stringbuf(basic_stringbuf&&,
const allocator_type&);
+template basic_stringbuf<char>::basic_stringbuf(basic_stringbuf&&,
+ const allocator_type&,
+ __xfer_bufptrs&&);
template basic_stringbuf<char>::allocator_type
basic_stringbuf<char>::get_allocator() const noexcept;
template string_view
@@ -75,6 +78,9 @@ template
basic_stringbuf<wchar_t>::basic_stringbuf(__string_type&&,
ios_base::openmode);
template basic_stringbuf<wchar_t>::basic_stringbuf(basic_stringbuf&&,
const allocator_type&);
+template basic_stringbuf<wchar_t>::basic_stringbuf(basic_stringbuf&&,
+ const allocator_type&,
+ __xfer_bufptrs&&);
template basic_stringbuf<wchar_t>::allocator_type
basic_stringbuf<wchar_t>::get_allocator() const noexcept;