Redefine the converting assignment in iterator

This commit is contained in:
HenryLee 2017-05-31 00:50:14 +10:00
parent c09a4cbbd7
commit 2d5f0c0549

View file

@ -8078,15 +8078,10 @@ class basic_json
@return const/non-const iterator
@note It is not checked whether @a other is initialized.
*/
iter_impl& operator=(iter_impl<basic_json> other) noexcept(
std::is_nothrow_move_constructible<pointer>::value and
std::is_nothrow_move_assignable<pointer>::value and
std::is_nothrow_move_constructible<struct internal_iterator>::value and
std::is_nothrow_move_assignable<struct internal_iterator>::value
)
iter_impl& operator=(const iter_impl<basic_json>& other) noexcept
{
std::swap(m_object, other.m_object);
std::swap(m_it, other.m_it);
m_object = other.m_object;
m_it = other.m_it;
return *this;
}