type_name<T> does not support incomplete types

This commit is contained in:
Peter Dimov
2021-10-26 00:50:59 +03:00
parent ab54773e26
commit 6dc25d067d

View File

@ -43,12 +43,22 @@ template<class T> void test_false()
BOOST_TEST_TRAIT_FALSE((is_scoped_enum<T const volatile>));
}
template<class T> void test_false_()
{
using boost::endian::detail::is_scoped_enum;
BOOST_TEST_NOT((is_scoped_enum<T>::value));
BOOST_TEST_NOT((is_scoped_enum<T const>::value));
BOOST_TEST_NOT((is_scoped_enum<T volatile>::value));
BOOST_TEST_NOT((is_scoped_enum<T const volatile>::value));
}
int main()
{
test_false<int>();
test_false<bool>();
test_false<X>();
test_false<Y>();
test_false_<Y>();
test_false<void>();
test_false<int[]>();
test_false<int[1]>();