// Copyright David Abrahams 2003. // 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) #ifndef STATIC_ASSERT_SAME_DWA2003530_HPP # define STATIC_ASSERT_SAME_DWA2003530_HPP # include # include #ifndef BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION template struct static_assert_same_base; template struct static_assert_same_base { enum { value = 1 }; }; template struct static_assert_same : static_assert_same_base {}; #else # include # include # include template struct static_assert_same : boost::mpl::if_,boost::mpl::true_,void>::type {}; #endif #define STATIC_ASSERT_SAME( T1,T2 ) \ enum { BOOST_JOIN(boost_static_assert_enum_, __LINE__) \ = static_assert_same::value } #endif // STATIC_ASSERT_SAME_DWA2003530_HPP