// Copyright David Abrahams 2005. Distributed under the Boost // Software License, Version 1.0. (See accompanying // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) #include #include #include #include namespace test { using namespace boost::parameter::aux; using namespace boost; struct foo {}; BOOST_MPL_ASSERT((is_same::type,int>)); BOOST_MPL_ASSERT((is_same::type,int const>)); BOOST_MPL_ASSERT((is_same::type,int volatile>)); BOOST_MPL_ASSERT((is_same::type,int const volatile>)); BOOST_MPL_ASSERT((is_same::type,foo>)); BOOST_MPL_ASSERT((is_same::type,foo const>)); BOOST_MPL_ASSERT((is_same::type,foo volatile>)); BOOST_MPL_ASSERT((is_same::type,foo const volatile>)); BOOST_MPL_ASSERT((is_same >::type,foo>)); BOOST_MPL_ASSERT((is_same const>::type,foo>)); BOOST_MPL_ASSERT((is_same volatile>::type,foo>)); BOOST_MPL_ASSERT((is_same const volatile>::type,foo>)); }