diff --git a/include/boost/container/detail/pair.hpp b/include/boost/container/detail/pair.hpp index 3c3ae38..af32d6a 100644 --- a/include/boost/container/detail/pair.hpp +++ b/include/boost/container/detail/pair.hpp @@ -20,6 +20,8 @@ #include "config_begin.hpp" #include +#include +#include #include #include @@ -211,7 +213,11 @@ struct pair } template - pair& operator=(const pair&p) + typename ::boost::container::container_detail::enable_if_c + < !(::boost::container::container_detail::is_same::value && + ::boost::container::container_detail::is_same::value) + , pair &>::type + operator=(const pair&p) { first = p.first; second = p.second; @@ -219,7 +225,11 @@ struct pair } template - pair& operator=(BOOST_RV_REF_BEG pair BOOST_RV_REF_END p) + typename ::boost::container::container_detail::enable_if_c + < !(::boost::container::container_detail::is_same::value && + ::boost::container::container_detail::is_same::value) + , pair &>::type + operator=(BOOST_RV_REF_BEG pair BOOST_RV_REF_END p) { first = ::boost::move(p.first); second = ::boost::move(p.second);