Commented out noexcept for move assignment

This commit is contained in:
Daniel James
2017-04-20 22:59:00 +01:00
parent af94e6a40e
commit e4a00980f8
2 changed files with 32 additions and 0 deletions

View File

@ -153,6 +153,10 @@ template <class K, class T, class H, class P, class A> class unordered_map
}
unordered_map& operator=(BOOST_RV_REF(unordered_map) x)
// C++17 support: BOOST_NOEXCEPT_IF(
// value_allocator_traits::is_always_equal::value &&
// is_nothrow_move_assignable_v<H> &&
// is_nothrow_move_assignable_v<P>)
{
table_.move_assign(x.table_);
return *this;
@ -166,6 +170,10 @@ template <class K, class T, class H, class P, class A> class unordered_map
#if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
unordered_map& operator=(unordered_map&& x)
// C++17 support: BOOST_NOEXCEPT_IF(
// value_allocator_traits::is_always_equal::value &&
// is_nothrow_move_assignable_v<H> &&
// is_nothrow_move_assignable_v<P>)
{
table_.move_assign(x.table_);
return *this;
@ -868,6 +876,10 @@ template <class K, class T, class H, class P, class A> class unordered_multimap
}
unordered_multimap& operator=(BOOST_RV_REF(unordered_multimap) x)
// C++17 support: BOOST_NOEXCEPT_IF(
// value_allocator_traits::is_always_equal::value &&
// is_nothrow_move_assignable_v<H> &&
// is_nothrow_move_assignable_v<P>)
{
table_.move_assign(x.table_);
return *this;
@ -881,6 +893,10 @@ template <class K, class T, class H, class P, class A> class unordered_multimap
#if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
unordered_multimap& operator=(unordered_multimap&& x)
// C++17 support: BOOST_NOEXCEPT_IF(
// value_allocator_traits::is_always_equal::value &&
// is_nothrow_move_assignable_v<H> &&
// is_nothrow_move_assignable_v<P>)
{
table_.move_assign(x.table_);
return *this;

View File

@ -151,6 +151,10 @@ template <class T, class H, class P, class A> class unordered_set
}
unordered_set& operator=(BOOST_RV_REF(unordered_set) x)
// C++17 support: BOOST_NOEXCEPT_IF(
// value_allocator_traits::is_always_equal::value &&
// is_nothrow_move_assignable_v<H> &&
// is_nothrow_move_assignable_v<P>)
{
table_.move_assign(x.table_);
return *this;
@ -164,6 +168,10 @@ template <class T, class H, class P, class A> class unordered_set
#if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
unordered_set& operator=(unordered_set&& x)
// C++17 support: BOOST_NOEXCEPT_IF(
// value_allocator_traits::is_always_equal::value &&
// is_nothrow_move_assignable_v<H> &&
// is_nothrow_move_assignable_v<P>)
{
table_.move_assign(x.table_);
return *this;
@ -609,6 +617,10 @@ template <class T, class H, class P, class A> class unordered_multiset
}
unordered_multiset& operator=(BOOST_RV_REF(unordered_multiset) x)
// C++17 support: BOOST_NOEXCEPT_IF(
// value_allocator_traits::is_always_equal::value &&
// is_nothrow_move_assignable_v<H> &&
// is_nothrow_move_assignable_v<P>)
{
table_.move_assign(x.table_);
return *this;
@ -622,6 +634,10 @@ template <class T, class H, class P, class A> class unordered_multiset
#if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
unordered_multiset& operator=(unordered_multiset&& x)
// C++17 support: BOOST_NOEXCEPT_IF(
// value_allocator_traits::is_always_equal::value &&
// is_nothrow_move_assignable_v<H> &&
// is_nothrow_move_assignable_v<P>)
{
table_.move_assign(x.table_);
return *this;