diff --git a/include/boost/bind.hpp b/include/boost/bind.hpp index aac5907..5ae4210 100644 --- a/include/boost/bind.hpp +++ b/include/boost/bind.hpp @@ -1093,18 +1093,6 @@ template type; }; -// g++ 2.95 specific helper; used by the data member overload - -template struct add_cref -{ - typedef T const & type; -}; - -template<> struct add_cref -{ - typedef void type; -}; - } // namespace _bi // visit_each @@ -1459,6 +1447,26 @@ template struct add_cref +{ + typedef T const & type; +}; + +template struct add_cref< T & > +{ + typedef T const & type; +}; + +template<> struct add_cref +{ + typedef void type; +}; + +} // namespace _bi + template _bi::bind_t< typename _bi::add_cref::type, _mfi::dm, typename _bi::list_av_1::type > BOOST_BIND(R T::*f, A1 a1)