// (C) Copyright John Maddock 2004. // Use, modification and distribution are subject to 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) #ifdef TEST_STD # include #else # include # include # include #endif #include "test.hpp" #include "check_integral_constant.hpp" struct my_pod{}; struct my_union { char c; int i; }; namespace tt { template<> struct is_pod : public mpl::true_{}; template<> struct is_pod : public mpl::true_{}; template<> struct is_union : public mpl::true_{}; template<> struct is_class : public mpl::false_{}; } TT_TEST_BEGIN(is_pod) BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_pod::value, true); BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_pod::value, true); BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_union::value, true); BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_class::value, false); TT_TEST_END