diff --git a/include/boost/type_traits/integral_constant.hpp b/include/boost/type_traits/integral_constant.hpp index 0a6450a..4ed1bb0 100755 --- a/include/boost/type_traits/integral_constant.hpp +++ b/include/boost/type_traits/integral_constant.hpp @@ -19,42 +19,7 @@ template #endif struct integral_constant : public mpl::integral_c { - //BOOST_STATIC_CONSTANT(T, value = val); - //typedef T value_type; typedef integral_constant type; - -#if 0 - // - // everything that follows now, is MPL-compatibility code: - // - typedef ::boost::mpl::integral_c_tag tag; - - // have to #ifdef here: some compilers don't like the 'val + 1' form (MSVC), - // while some other don't like 'value + 1' (Borland), and some don't like - // either -#if BOOST_WORKAROUND(__EDG_VERSION__, <= 243) -private: - BOOST_STATIC_CONSTANT(T, next_value = BOOST_MPL_AUX_STATIC_CAST(T, (val + 1))); - BOOST_STATIC_CONSTANT(T, prior_value = BOOST_MPL_AUX_STATIC_CAST(T, (val - 1))); -public: - typedef integral_constant next; - typedef integral_constant prior; -#elif BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x561)) \ - || BOOST_WORKAROUND(__IBMCPP__, BOOST_TESTED_AT(502)) \ - || BOOST_WORKAROUND(__HP_aCC, BOOST_TESTED_AT(53800)) - typedef integral_constant next; - typedef integral_constant prior; -#else - typedef integral_constant next; - typedef integral_constant prior; -#endif - - // enables uniform function call syntax for families of overloaded - // functions that return objects of both arithmetic ('int', 'long', - // 'double', etc.) and wrapped integral types (for an example, see - // "mpl/example/power.cpp") - operator T() const { return static_cast(this->value); } -#endif }; template<> struct integral_constant : public mpl::true_