Index: boost/scope_exit.hpp =================================================================== --- boost/scope_exit.hpp (revision 73900) +++ boost/scope_exit.hpp (working copy) @@ -80,6 +80,7 @@ T& value; #ifndef BOOST_SCOPE_EXIT_AUX_TPL_WORKAROUND member(T& ref) : value(ref) {} + void operator=(member); #endif }; @@ -89,6 +90,7 @@ T value; #ifndef BOOST_SCOPE_EXIT_AUX_TPL_WORKAROUND member(T& val) : value(val) {} + void operator=(member); #endif }; @@ -220,6 +222,7 @@ BOOST_PP_SEQ_FOR_EACH_I(BOOST_SCOPE_EXIT_AUX_TAG_DECL, id, seq) \ BOOST_PP_SEQ_FOR_EACH_I(BOOST_SCOPE_EXIT_AUX_CAPTURE_DECL, (id,ty), seq) \ struct BOOST_SCOPE_EXIT_AUX_PARAMS_T(id) { \ + void operator=(BOOST_SCOPE_EXIT_AUX_PARAMS_T(id)); \ BOOST_PP_SEQ_FOR_EACH_I(BOOST_SCOPE_EXIT_AUX_PARAM_DECL, (id,ty), seq) \ BOOST_PP_SEQ_FOR_EACH_I(BOOST_SCOPE_EXIT_AUX_MEMBER, id, seq) \ BOOST_SCOPE_EXIT_AUX_PARAMS_T_CTOR(id, seq) \