From 7504f83ee0374aec826039d72866dac2cd388159 Mon Sep 17 00:00:00 2001 From: Dave Abrahams Date: Fri, 1 Feb 2002 04:35:47 +0000 Subject: [PATCH] Slightly more robust test cases rule out some wrongheaded implementation ideas [SVN r12617] --- tests/is_convertible_test.cpp | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/tests/is_convertible_test.cpp b/tests/is_convertible_test.cpp index f4ec689..fe0f9d5 100644 --- a/tests/is_convertible_test.cpp +++ b/tests/is_convertible_test.cpp @@ -9,6 +9,11 @@ #include #include "boost/type_traits/type_traits_test.hpp" +template +struct convertible_from +{ + convertible_from(T); +}; int cpp_main(int argc, char* argv[]) { @@ -20,6 +25,25 @@ int cpp_main(int argc, char* argv[]) value_test(false, (boost::is_convertible::value)); value_test(false, (boost::is_convertible::value)); value_test(true, (boost::is_convertible::value)); + + value_test(true, (boost::is_convertible >::value)); + value_test(true, (boost::is_convertible >::value)); + value_test(true, (boost::is_convertible >::value)); + + value_test(true, (boost::is_convertible >::value)); + value_test(true, (boost::is_convertible >::value)); + value_test(false, (boost::is_convertible >::value)); + + value_test(true, (boost::is_convertible >::value)); + value_test(true, (boost::is_convertible >::value)); + value_test(true, (boost::is_convertible >::value)); + + value_test(true, (boost::is_convertible >::value)); + value_test(true, (boost::is_convertible >::value)); + value_test(true, (boost::is_convertible >::value)); + value_test(true, (boost::is_convertible >::value)); + value_test(true, (boost::is_convertible >::value)); + #if defined(BOOST_MSVC6_MEMBER_TEMPLATES) || !defined(BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION) value_test(false, (boost::is_convertible::value)); value_test(false, (boost::is_convertible::value));