diff --git a/include/boost/typeof/std/functional.hpp b/include/boost/typeof/std/functional.hpp index f1b1577..6d3d00d 100755 --- a/include/boost/typeof/std/functional.hpp +++ b/include/boost/typeof/std/functional.hpp @@ -10,8 +10,10 @@ #include BOOST_TYPEOF_INCREMENT_REGISTRATION_GROUP() +#ifndef BOOST_NO_CXX98_FUNCTION_BASE BOOST_TYPEOF_REGISTER_TEMPLATE(std::unary_function, 2) BOOST_TYPEOF_REGISTER_TEMPLATE(std::binary_function, 3) +#endif//BOOST_NO_CXX98_FUNCTION_BASE BOOST_TYPEOF_REGISTER_TEMPLATE(std::plus, 1) BOOST_TYPEOF_REGISTER_TEMPLATE(std::minus, 1) BOOST_TYPEOF_REGISTER_TEMPLATE(std::multiplies, 1) @@ -30,6 +32,8 @@ BOOST_TYPEOF_REGISTER_TEMPLATE(std::logical_not, 1) BOOST_TYPEOF_REGISTER_TEMPLATE(std::unary_negate, 1) BOOST_TYPEOF_REGISTER_TEMPLATE(std::binary_negate, 1) +#ifndef BOOST_NO_CXX98_BINDERS + #if defined(__MWERKS__) && defined(_MSL_EXTENDED_BINDERS) BOOST_TYPEOF_REGISTER_TEMPLATE(std::binder1st, 2) BOOST_TYPEOF_REGISTER_TEMPLATE(std::binder2nd, 2) @@ -52,4 +56,6 @@ BOOST_TYPEOF_REGISTER_TEMPLATE(std::mem_fun1_ref_t, 3) BOOST_TYPEOF_REGISTER_TEMPLATE(std::const_mem_fun1_ref_t, 3) #endif//BOOST_WORKAROUND(BOOST_DINKUMWARE_STDLIB, == 1) +#endif//BOOST_NO_CXX98_BINDERS + #endif//BOOST_TYPEOF_STD_functional_hpp_INCLUDED diff --git a/include/boost/typeof/std/memory.hpp b/include/boost/typeof/std/memory.hpp index fa3ae1d..ad4c2c1 100755 --- a/include/boost/typeof/std/memory.hpp +++ b/include/boost/typeof/std/memory.hpp @@ -12,6 +12,8 @@ BOOST_TYPEOF_REGISTER_TEMPLATE(std::allocator, 1) BOOST_TYPEOF_REGISTER_TEMPLATE(std::raw_storage_iterator, 2) +#ifndef BOOST_NO_AUTO_PTR BOOST_TYPEOF_REGISTER_TEMPLATE(std::auto_ptr, 1) +#endif//BOOST_NO_AUTO_PTR #endif//BOOST_TYPEOF_STD_memory_hpp_INCLUDED diff --git a/test/std.cpp b/test/std.cpp index e6bfdaf..19aac08 100755 --- a/test/std.cpp +++ b/test/std.cpp @@ -42,8 +42,10 @@ BOOST_STATIC_ASSERT(boost::type_of::test >::value); // function objects +#ifndef BOOST_NO_CXX98_FUNCTION_BASE BOOST_STATIC_ASSERT((boost::type_of::test >::value)); BOOST_STATIC_ASSERT((boost::type_of::test >::value)); +#endif//BOOST_NO_CXX98_FUNCTION_BASE BOOST_STATIC_ASSERT(boost::type_of::test >::value); BOOST_STATIC_ASSERT(boost::type_of::test >::value); BOOST_STATIC_ASSERT(boost::type_of::test >::value); @@ -61,8 +63,10 @@ BOOST_STATIC_ASSERT(boost::type_of::test >::value); BOOST_STATIC_ASSERT(boost::type_of::test >::value); BOOST_STATIC_ASSERT(boost::type_of::test > >::value); BOOST_STATIC_ASSERT(boost::type_of::test > >::value); +#ifndef BOOST_NO_CXX98_BINDERS BOOST_STATIC_ASSERT(boost::type_of::test > >::value); BOOST_STATIC_ASSERT(boost::type_of::test > >::value); +#endif//BOOST_NO_CXX98_BINDERS // valarray