https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58265
--- Comment #9 from Jonathan Wakely <redi at gcc dot gnu.org> --- Author: redi Date: Fri Sep 11 11:02:14 2015 New Revision: 227681 URL: https://gcc.gnu.org/viewcvs?rev=227681&root=gcc&view=rev Log: Implement N4258 noexcept for std::basic_string. PR libstdc++/58265 * doc/xml/manual/intro.xml: Document LWG 2063 and 2064 resolutions. * doc/html/manual/bugs.html: Regenerate. * include/bits/basic_string.h (basic_string): Implement N4258. Add correct exception-specifications and propagate allocators correctly. * include/bits/basic_string.tcc (basic_string::swap): Propagate allocators correctly. * include/debug/string (__gnu_debug::basic_string): Add correct exceptions-specifications and allcoator-extended constructors. * testsuite/21_strings/basic_string/allocator/char/copy.cc: New. * testsuite/21_strings/basic_string/allocator/char/copy_assign.cc: New. * testsuite/21_strings/basic_string/allocator/char/minimal.cc: New. * testsuite/21_strings/basic_string/allocator/char/move.cc: New. * testsuite/21_strings/basic_string/allocator/char/move_assign.cc: New. * testsuite/21_strings/basic_string/allocator/char/noexcept.cc: New. * testsuite/21_strings/basic_string/allocator/char/swap.cc: New. * testsuite/21_strings/basic_string/allocator/wchar_t/copy.cc: New. * testsuite/21_strings/basic_string/allocator/wchar_t/copy_assign.cc: New. * testsuite/21_strings/basic_string/allocator/wchar_t/minimal.cc: New. * testsuite/21_strings/basic_string/allocator/wchar_t/move.cc: New. * testsuite/21_strings/basic_string/allocator/wchar_t/move_assign.cc: New. * testsuite/21_strings/basic_string/allocator/wchar_t/noexcept.cc: New. * testsuite/21_strings/basic_string/allocator/wchar_t/swap.cc: New. * testsuite/util/testsuite_allocator.h (tracker_allocator): Define defaulted assignment operators. Added: trunk/libstdc++-v3/testsuite/21_strings/basic_string/allocator/ trunk/libstdc++-v3/testsuite/21_strings/basic_string/allocator/char/ trunk/libstdc++-v3/testsuite/21_strings/basic_string/allocator/char/copy.cc trunk/libstdc++-v3/testsuite/21_strings/basic_string/allocator/char/copy_assign.cc trunk/libstdc++-v3/testsuite/21_strings/basic_string/allocator/char/minimal.cc trunk/libstdc++-v3/testsuite/21_strings/basic_string/allocator/char/move.cc trunk/libstdc++-v3/testsuite/21_strings/basic_string/allocator/char/move_assign.cc trunk/libstdc++-v3/testsuite/21_strings/basic_string/allocator/char/noexcept.cc trunk/libstdc++-v3/testsuite/21_strings/basic_string/allocator/char/swap.cc trunk/libstdc++-v3/testsuite/21_strings/basic_string/allocator/wchar_t/ trunk/libstdc++-v3/testsuite/21_strings/basic_string/allocator/wchar_t/copy.cc trunk/libstdc++-v3/testsuite/21_strings/basic_string/allocator/wchar_t/copy_assign.cc trunk/libstdc++-v3/testsuite/21_strings/basic_string/allocator/wchar_t/minimal.cc trunk/libstdc++-v3/testsuite/21_strings/basic_string/allocator/wchar_t/move.cc trunk/libstdc++-v3/testsuite/21_strings/basic_string/allocator/wchar_t/move_assign.cc trunk/libstdc++-v3/testsuite/21_strings/basic_string/allocator/wchar_t/noexcept.cc trunk/libstdc++-v3/testsuite/21_strings/basic_string/allocator/wchar_t/swap.cc Modified: trunk/libstdc++-v3/ChangeLog trunk/libstdc++-v3/doc/html/manual/bugs.html trunk/libstdc++-v3/doc/xml/manual/intro.xml trunk/libstdc++-v3/include/bits/basic_string.h trunk/libstdc++-v3/include/bits/basic_string.tcc trunk/libstdc++-v3/include/debug/string trunk/libstdc++-v3/testsuite/util/testsuite_allocator.h