-
- Downloads
libstdc++: Add remaining C++20 additions to <sstream> [P0408R7]
This adds the new overloads of basic_stringbuf::str, and the corresponding overloads to basic_istringstream, basic_ostringstream and basic_stringstream. libstdc++-v3/ChangeLog: * config/abi/pre/gnu.ver (GLIBCXX_3.4.21): Tighten patterns. (GLIBCXX_3.4.29): Export new symbols. * include/bits/alloc_traits.h (__allocator_like): New concept. * include/std/sstream (basic_stringbuf::swap): Add exception specification. (basic_stringbuf::str() const): Add ref-qualifier. Use new _M_high_mark function. (basic_stringbuf::str(const SAlloc&) const): Define new function. (basic_stringbuf::str() &&): Likewise. (basic_stringbuf::str(const basic_string<C,T,SAlloc>&)): Likewise. (basic_stringbuf::str(basic_string<C,T,Alloc>&&)): Likewise. (basic_stringbuf::view() const): Use _M_high_mark. (basic_istringstream::str, basic_ostringstream::str) (basic_stringstream::str): Define new overloads. * src/c++20/sstream-inst.cc (basic_stringbuf::str) (basic_istringstream::str, basic_ostringstream::str) (basic_stringstream::str): Explicit instantiation definitions for new overloads. * testsuite/27_io/basic_istringstream/view/char/1.cc: Add more checks. * testsuite/27_io/basic_istringstream/view/wchar_t/1.cc: Likewise. * testsuite/27_io/basic_ostringstream/view/char/1.cc: Likewise. * testsuite/27_io/basic_ostringstream/view/wchar_t/1.cc: Likewise. * testsuite/27_io/basic_stringstream/view/char/1.cc: Likewise. * testsuite/27_io/basic_stringstream/view/wchar_t/1.cc: Likewise. * testsuite/27_io/basic_istringstream/str/char/2.cc: New test. * testsuite/27_io/basic_istringstream/str/wchar_t/2.cc: New test. * testsuite/27_io/basic_ostringstream/str/char/3.cc: New test. * testsuite/27_io/basic_ostringstream/str/wchar_t/3.cc: New test. * testsuite/27_io/basic_stringbuf/str/char/4.cc: New test. * testsuite/27_io/basic_stringbuf/str/wchar_t/4.cc: New test. * testsuite/27_io/basic_stringstream/str/char/5.cc: New test. * testsuite/27_io/basic_stringstream/str/wchar_t/5.cc.cc: New test.
Showing
- libstdc++-v3/config/abi/pre/gnu.ver 18 additions, 3 deletionslibstdc++-v3/config/abi/pre/gnu.ver
- libstdc++-v3/include/bits/alloc_traits.h 8 additions, 0 deletionslibstdc++-v3/include/bits/alloc_traits.h
- libstdc++-v3/include/std/sstream 182 additions, 41 deletionslibstdc++-v3/include/std/sstream
- libstdc++-v3/src/c++20/sstream-inst.cc 48 additions, 0 deletionslibstdc++-v3/src/c++20/sstream-inst.cc
- libstdc++-v3/testsuite/27_io/basic_istringstream/str/char/2.cc 94 additions, 0 deletions...dc++-v3/testsuite/27_io/basic_istringstream/str/char/2.cc
- libstdc++-v3/testsuite/27_io/basic_istringstream/str/wchar_t/2.cc 94 additions, 0 deletions...+-v3/testsuite/27_io/basic_istringstream/str/wchar_t/2.cc
- libstdc++-v3/testsuite/27_io/basic_istringstream/view/char/1.cc 14 additions, 2 deletions...c++-v3/testsuite/27_io/basic_istringstream/view/char/1.cc
- libstdc++-v3/testsuite/27_io/basic_istringstream/view/wchar_t/1.cc 13 additions, 1 deletion...-v3/testsuite/27_io/basic_istringstream/view/wchar_t/1.cc
- libstdc++-v3/testsuite/27_io/basic_ostringstream/str/char/3.cc 94 additions, 0 deletions...dc++-v3/testsuite/27_io/basic_ostringstream/str/char/3.cc
- libstdc++-v3/testsuite/27_io/basic_ostringstream/str/wchar_t/3.cc 94 additions, 0 deletions...+-v3/testsuite/27_io/basic_ostringstream/str/wchar_t/3.cc
- libstdc++-v3/testsuite/27_io/basic_ostringstream/view/char/1.cc 10 additions, 2 deletions...c++-v3/testsuite/27_io/basic_ostringstream/view/char/1.cc
- libstdc++-v3/testsuite/27_io/basic_ostringstream/view/wchar_t/1.cc 10 additions, 2 deletions...-v3/testsuite/27_io/basic_ostringstream/view/wchar_t/1.cc
- libstdc++-v3/testsuite/27_io/basic_stringbuf/str/char/4.cc 94 additions, 0 deletionslibstdc++-v3/testsuite/27_io/basic_stringbuf/str/char/4.cc
- libstdc++-v3/testsuite/27_io/basic_stringbuf/str/wchar_t/4.cc 94 additions, 0 deletions...tdc++-v3/testsuite/27_io/basic_stringbuf/str/wchar_t/4.cc
- libstdc++-v3/testsuite/27_io/basic_stringstream/str/char/5.cc 94 additions, 0 deletions...tdc++-v3/testsuite/27_io/basic_stringstream/str/char/5.cc
- libstdc++-v3/testsuite/27_io/basic_stringstream/str/wchar_t/5.cc.cc 94 additions, 0 deletions...v3/testsuite/27_io/basic_stringstream/str/wchar_t/5.cc.cc
- libstdc++-v3/testsuite/27_io/basic_stringstream/view/char/1.cc 14 additions, 2 deletions...dc++-v3/testsuite/27_io/basic_stringstream/view/char/1.cc
- libstdc++-v3/testsuite/27_io/basic_stringstream/view/wchar_t/1.cc 13 additions, 1 deletion...+-v3/testsuite/27_io/basic_stringstream/view/wchar_t/1.cc
Loading
Please register or sign in to comment