Ticket #7598: unique_ptr.2.patch
File unique_ptr.2.patch, 1.5 KB (added by , 10 years ago) |
---|
-
boost/interprocess/smart_ptr/unique_ptr.hpp
old new 82 82 class unique_ptr 83 83 { 84 84 /// @cond 85 struct nat {int for_bool;}; 86 struct nat2 {int for_bool;}; 87 typedef int nat2::*nullptr_t; 85 struct nat {int for_bool_;}; 88 86 typedef typename ipcdetail::add_reference<D>::type deleter_reference; 89 87 typedef typename ipcdetail::add_reference<const D>::type deleter_const_reference; 90 88 /// @endcond … … 177 175 //! 178 176 //!Throws: nothing. 179 177 template <class U, class E> 180 unique_ptr(BOOST_RV_REF_ BEG unique_ptr<U, E> BOOST_RV_REF_ENDu,178 unique_ptr(BOOST_RV_REF_2_TEMPL_ARGS(unique_ptr, U, E) u, 181 179 typename ipcdetail::enable_if_c< 182 180 ipcdetail::is_convertible<typename unique_ptr<U, E>::pointer, pointer>::value && 183 181 ipcdetail::is_convertible<E, D>::value && … … 232 230 //! 233 231 //!Throws: nothing. 234 232 template <class U, class E> 235 unique_ptr& operator=(BOOST_RV_REF_ BEG unique_ptr<U, E> BOOST_RV_REF_ENDu)233 unique_ptr& operator=(BOOST_RV_REF_2_TEMPL_ARGS(unique_ptr, U, E) u) 236 234 { 237 235 reset(u.release()); 238 236 ptr_.second() = boost::move(u.get_deleter()); … … 248 246 //!Returns: *this. 249 247 //! 250 248 //!Throws: nothing. 251 unique_ptr& operator=( nullptr_t)249 unique_ptr& operator=(int nat::*) 252 250 { 253 251 reset(); 254 252 return *this;