From 3f6ca76da3b683d635e2ce4bf36a8b4bce33a191 Mon Sep 17 00:00:00 2001 From: Dave Abrahams Date: Sat, 18 Jun 2005 10:43:36 +0000 Subject: [PATCH] Add failing test case for Brian Braatz. [SVN r29671] --- test/set.cpp | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/test/set.cpp b/test/set.cpp index 39de492..29c2312 100644 --- a/test/set.cpp +++ b/test/set.cpp @@ -13,6 +13,8 @@ // $Revision$ #include +#include +#include #include #include #include @@ -160,3 +162,29 @@ MPL_TEST_CASE() MPL_ASSERT_NOT(( has_key )); MPL_ASSERT_NOT(( has_key )); } + +// Use a template for testing so that GCC will show us the actual types involved +template +struct test +{ + typedef typename mpl::begin::type i0; + typedef typename mpl::deref::type t0; + BOOST_MPL_ASSERT((boost::is_same)); + + typedef typename mpl::next::type i1; + typedef typename mpl::deref::type t1; + BOOST_MPL_ASSERT((boost::is_same)); + + typedef typename mpl::next::type i2; + typedef typename mpl::deref::type t2; + BOOST_MPL_ASSERT((boost::is_same)); + + typedef typename mpl::next::type i3; + BOOST_MPL_ASSERT((boost::is_same::type>)); +}; + +MPL_TEST_CASE() +{ + typedef mpl::set myset; + test y; +}