diff --git a/include/boost/function/function_base.hpp b/include/boost/function/function_base.hpp index 9f4bd32..22f379f 100644 --- a/include/boost/function/function_base.hpp +++ b/include/boost/function/function_base.hpp @@ -295,44 +295,33 @@ namespace boost { }; #ifndef BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION - -# if BOOST_WORKAROUND(__HP_aCC, <= 33900) template struct enable_if; -# else - template struct enable_if; -# endif - template struct enable_if { typedef T type; }; template struct enable_if {}; -#else -# if BOOST_WORKAROUND(__HP_aCC, <= 33900) - template -# else - template -# endif - struct enabled + template + struct enabled + { + template + struct base { - template - struct base - { - typedef T type; - }; + typedef T type; }; + }; - template<> - struct enabled - { - template - struct base - { - }; - }; - - template - struct enable_if : public enabled::template base + template<> + struct enabled + { + template + struct base { }; + }; + + template + struct enable_if : public enabled::template base + { + }; #endif // A type that is only used for comparisons against zero