diff --git a/test/has_binary_classes0_test.cpp b/test/has_binary_classes0_test.cpp index 1c6978b..528ee70 100644 --- a/test/has_binary_classes0_test.cpp +++ b/test/has_binary_classes0_test.cpp @@ -259,4 +259,9 @@ TT_TEST_BEGIN(BOOST_TT_TRAIT_NAME) BOOST_CHECK_INTEGRAL_CONSTANT((::boost::has_plus< C014, C014 &, ret const & >::value), 1); BOOST_CHECK_INTEGRAL_CONSTANT((::boost::has_plus< C014, C014 const &, ret const & >::value), 1); BOOST_CHECK_INTEGRAL_CONSTANT((::boost::has_plus< C014 const, C014, ret const >::value), 1); + +#ifndef BOOST_NO_CXX11_SCOPED_ENUMS + BOOST_CHECK_INTEGRAL_CONSTANT((::boost::has_plus< scoped_enum, scoped_enum >::value), 0); +#endif + TT_TEST_END diff --git a/test/has_complement_test.cpp b/test/has_complement_test.cpp index 394ecca..12af8c0 100644 --- a/test/has_complement_test.cpp +++ b/test/has_complement_test.cpp @@ -222,7 +222,9 @@ void specific() { BOOST_CHECK_INTEGRAL_CONSTANT((::boost::BOOST_TT_TRAIT_NAME< int* const &, int const >::value), 0); BOOST_CHECK_INTEGRAL_CONSTANT((::boost::BOOST_TT_TRAIT_NAME< int* const &, int & >::value), 0); BOOST_CHECK_INTEGRAL_CONSTANT((::boost::BOOST_TT_TRAIT_NAME< int* const &, int const & >::value), 0); - +#ifndef BOOST_NO_CXX11_SCOPED_ENUMS + BOOST_CHECK_INTEGRAL_CONSTANT((::boost::BOOST_TT_TRAIT_NAME< scoped_enum >::value), 0); +#endif } TT_TEST_BEGIN(BOOST_TT_TRAIT_NAME) diff --git a/test/has_unary_minus_test.cpp b/test/has_unary_minus_test.cpp index 5481a16..1751d8c 100644 --- a/test/has_unary_minus_test.cpp +++ b/test/has_unary_minus_test.cpp @@ -219,6 +219,9 @@ void specific() { BOOST_CHECK_INTEGRAL_CONSTANT((::boost::BOOST_TT_TRAIT_NAME< int* const &, int & >::value), 0); BOOST_CHECK_INTEGRAL_CONSTANT((::boost::BOOST_TT_TRAIT_NAME< int* const &, int const & >::value), 0); +#ifndef BOOST_NO_CXX11_SCOPED_ENUMS + BOOST_CHECK_INTEGRAL_CONSTANT((::boost::BOOST_TT_TRAIT_NAME< scoped_enum >::value), 0); +#endif } TT_TEST_BEGIN(BOOST_TT_TRAIT_NAME) diff --git a/test/has_unary_plus_test.cpp b/test/has_unary_plus_test.cpp index 416c01a..b629afe 100644 --- a/test/has_unary_plus_test.cpp +++ b/test/has_unary_plus_test.cpp @@ -219,6 +219,9 @@ void specific() { BOOST_CHECK_INTEGRAL_CONSTANT((::boost::BOOST_TT_TRAIT_NAME< int* const &, int & >::value), 0); BOOST_CHECK_INTEGRAL_CONSTANT((::boost::BOOST_TT_TRAIT_NAME< int* const &, int const & >::value), 0); +#ifndef BOOST_NO_CXX11_SCOPED_ENUMS + BOOST_CHECK_INTEGRAL_CONSTANT((::boost::BOOST_TT_TRAIT_NAME< scoped_enum >::value), 0); +#endif } TT_TEST_BEGIN(BOOST_TT_TRAIT_NAME) diff --git a/test/test.hpp b/test/test.hpp index 15fd66a..4d0eb32 100644 --- a/test/test.hpp +++ b/test/test.hpp @@ -322,6 +322,12 @@ enum enum2 three_,four_ }; +#ifndef BOOST_NO_CXX11_SCOPED_ENUMS + +enum class scoped_enum { one, two, three }; + +#endif + struct VB { virtual ~VB(){};