libstdc++: Fix [multi]map/[multi]set move constructors noexcept qualification
authorFrançois Dumont <fdumont@gcc.gnu.org>
Fri, 3 Jul 2020 06:13:19 +0000 (08:13 +0200)
committerFrançois Dumont <fdumont@gcc.gnu.org>
Wed, 8 Jul 2020 06:02:16 +0000 (08:02 +0200)
commitc832cf1c1d114aed70c2f84566cf4d63de0a56d0
tree3ad06482bfec1acc87dd302917afe424385ecef1
parentfccb41b909cb207174d3270ce69e6729e2db28fa
libstdc++: Fix [multi]map/[multi]set move constructors noexcept qualification

Container move constructors shall not consider their allocator move
constructor qualification.

libstdc++-v3/ChangeLog:

* include/bits/stl_tree.h (_Rb_tree_impl(_Rb_tree_impl&&)): Add noexcept
qualification based only on _Compare one.
* testsuite/23_containers/map/cons/noexcept_move_construct.cc: Add
static asserts.
* testsuite/23_containers/multimap/cons/noexcept_move_construct.cc:
Likewise.
* testsuite/23_containers/multiset/cons/noexcept_move_construct.cc:
Likewise.
* testsuite/23_containers/set/cons/noexcept_move_construct.cc: Likewise.
libstdc++-v3/include/bits/stl_tree.h
libstdc++-v3/testsuite/23_containers/map/cons/noexcept_move_construct.cc
libstdc++-v3/testsuite/23_containers/multimap/cons/noexcept_move_construct.cc
libstdc++-v3/testsuite/23_containers/multiset/cons/noexcept_move_construct.cc
libstdc++-v3/testsuite/23_containers/set/cons/noexcept_move_construct.cc