diff --git a/include/boost/function/function_base.hpp b/include/boost/function/function_base.hpp index 00c7ce8..cd3a579 100644 --- a/include/boost/function/function_base.hpp +++ b/include/boost/function/function_base.hpp @@ -40,11 +40,8 @@ # pragma warning( disable : 4127 ) // "conditional expression is constant" #endif -#if defined(__ICL) && __ICL <= 600 || defined(__MWERKS__) && __MWERKS__ < 0x2406 && !defined(BOOST_STRICT_CONFIG) -# define BOOST_FUNCTION_TARGET_FIX(x) x -#else -# define BOOST_FUNCTION_TARGET_FIX(x) -#endif // __ICL etc +// retained because used in a test +#define BOOST_FUNCTION_TARGET_FIX(x) # define BOOST_FUNCTION_ENABLE_IF_NOT_INTEGRAL(Functor,Type) \ typename ::boost::enable_if_< \ diff --git a/include/boost/function/function_template.hpp b/include/boost/function/function_template.hpp index 90f6118..006ca90 100644 --- a/include/boost/function/function_template.hpp +++ b/include/boost/function/function_template.hpp @@ -697,7 +697,7 @@ namespace boost { // MSVC chokes if the following two constructors are collapsed into // one with a default parameter. template - BOOST_FUNCTION_FUNCTION(Functor BOOST_FUNCTION_TARGET_FIX(const &) f + BOOST_FUNCTION_FUNCTION(Functor f #ifndef BOOST_NO_SFINAE ,typename boost::enable_if_< !(is_integral::value), @@ -709,7 +709,7 @@ namespace boost { this->assign_to(f); } template - BOOST_FUNCTION_FUNCTION(Functor BOOST_FUNCTION_TARGET_FIX(const &) f, Allocator a + BOOST_FUNCTION_FUNCTION(Functor f, Allocator a #ifndef BOOST_NO_SFINAE ,typename boost::enable_if_< !(is_integral::value), @@ -766,7 +766,7 @@ namespace boost { #else BOOST_FUNCTION_FUNCTION& #endif - operator=(Functor BOOST_FUNCTION_TARGET_FIX(const &) f) + operator=(Functor f) { this->clear(); BOOST_TRY { @@ -779,7 +779,7 @@ namespace boost { return *this; } template - void assign(Functor BOOST_FUNCTION_TARGET_FIX(const &) f, Allocator a) + void assign(Functor f, Allocator a) { this->clear(); BOOST_TRY{