diff --git a/include/boost/unordered/unordered_map.hpp b/include/boost/unordered/unordered_map.hpp index f12666c4..51d37e6b 100644 --- a/include/boost/unordered/unordered_map.hpp +++ b/include/boost/unordered/unordered_map.hpp @@ -682,7 +682,7 @@ template class unordered_map // value_allocator_traits::is_always_equal::value && // is_nothrow_move_assignable_v && // is_nothrow_move_assignable_v

) - void clear(); + void clear() BOOST_NOEXCEPT; template void merge(boost::unordered_map& source); @@ -1188,7 +1188,7 @@ template class unordered_multimap // value_allocator_traits::is_always_equal::value && // is_nothrow_move_assignable_v && // is_nothrow_move_assignable_v

) - void clear(); + void clear() BOOST_NOEXCEPT; template void merge(boost::unordered_multimap& source); @@ -1504,7 +1504,7 @@ void unordered_map::swap(unordered_map& other) } template -void unordered_map::clear() +void unordered_map::clear() BOOST_NOEXCEPT { table_.clear(); } @@ -1927,7 +1927,7 @@ void unordered_multimap::swap(unordered_multimap& other) } template -void unordered_multimap::clear() +void unordered_multimap::clear() BOOST_NOEXCEPT { table_.clear(); } diff --git a/include/boost/unordered/unordered_set.hpp b/include/boost/unordered/unordered_set.hpp index 58731b43..6300d6d3 100644 --- a/include/boost/unordered/unordered_set.hpp +++ b/include/boost/unordered/unordered_set.hpp @@ -421,7 +421,7 @@ template class unordered_set // value_allocator_traits::is_always_equal::value && // is_nothrow_move_assignable_v && // is_nothrow_move_assignable_v

) - void clear(); + void clear() BOOST_NOEXCEPT; template void merge(boost::unordered_set& source); @@ -896,7 +896,7 @@ template class unordered_multiset // value_allocator_traits::is_always_equal::value && // is_nothrow_move_assignable_v && // is_nothrow_move_assignable_v

) - void clear(); + void clear() BOOST_NOEXCEPT; template void merge(boost::unordered_multiset& source); @@ -1193,13 +1193,13 @@ void unordered_set::swap(unordered_set& other) } template -void unordered_set::clear() +void unordered_set::clear() BOOST_NOEXCEPT { table_.clear(); } template -void unordered_multiset::clear() +void unordered_multiset::clear() BOOST_NOEXCEPT { table_.clear(); } diff --git a/test/unordered/compile_tests.hpp b/test/unordered/compile_tests.hpp index 45ad2111..c676f2d5 100644 --- a/test/unordered/compile_tests.hpp +++ b/test/unordered/compile_tests.hpp @@ -554,6 +554,7 @@ void unordered_test(X& x, Key& k, Hash& hf, Pred& eq) const_iterator q1 = a.cbegin(), q2 = a.cend(); test::check_return_type::equals(a.erase(q1, q2)); + TEST_NOEXCEPT_EXPR(a.clear()); a.clear(); X const b;