Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r73004 - in branches/pplib/v2: boost/preprocessor boost/preprocessor/debug boost/preprocessor/facilities libs/preprocessor/test
From: eldiener_at_[hidden]
Date: 2011-07-11 12:14:44


Author: eldiener
Date: 2011-07-11 12:14:40 EDT (Mon, 11 Jul 2011)
New Revision: 73004
URL: http://svn.boost.org/trac/boost/changeset/73004

Log:
Updated assert macros and extended failure tests.
Added:
   branches/pplib/v2/boost/preprocessor/debug/assert_is_seq.hpp (contents, props changed)
   branches/pplib/v2/libs/preprocessor/test/debug_fail_array_2.c (contents, props changed)
   branches/pplib/v2/libs/preprocessor/test/debug_fail_array_2.cxx (contents, props changed)
   branches/pplib/v2/libs/preprocessor/test/debug_fail_array_3.c (contents, props changed)
   branches/pplib/v2/libs/preprocessor/test/debug_fail_array_3.cxx (contents, props changed)
   branches/pplib/v2/libs/preprocessor/test/debug_fail_array_4.c (contents, props changed)
   branches/pplib/v2/libs/preprocessor/test/debug_fail_array_4.cxx (contents, props changed)
   branches/pplib/v2/libs/preprocessor/test/debug_fail_array_5.cxx (contents, props changed)
   branches/pplib/v2/libs/preprocessor/test/debug_fail_list_2.c (contents, props changed)
   branches/pplib/v2/libs/preprocessor/test/debug_fail_list_2.cxx (contents, props changed)
   branches/pplib/v2/libs/preprocessor/test/debug_fail_list_3.c (contents, props changed)
   branches/pplib/v2/libs/preprocessor/test/debug_fail_list_3.cxx (contents, props changed)
   branches/pplib/v2/libs/preprocessor/test/debug_fail_list_4.c (contents, props changed)
   branches/pplib/v2/libs/preprocessor/test/debug_fail_list_4.cxx (contents, props changed)
   branches/pplib/v2/libs/preprocessor/test/debug_fail_seq.c (contents, props changed)
   branches/pplib/v2/libs/preprocessor/test/debug_fail_seq.cxx (contents, props changed)
   branches/pplib/v2/libs/preprocessor/test/debug_fail_seq_2.c (contents, props changed)
   branches/pplib/v2/libs/preprocessor/test/debug_fail_seq_2.cxx (contents, props changed)
   branches/pplib/v2/libs/preprocessor/test/debug_fail_seq_3.c (contents, props changed)
   branches/pplib/v2/libs/preprocessor/test/debug_fail_seq_3.cxx (contents, props changed)
   branches/pplib/v2/libs/preprocessor/test/debug_fail_seq_4.c (contents, props changed)
   branches/pplib/v2/libs/preprocessor/test/debug_fail_seq_4.cxx (contents, props changed)
   branches/pplib/v2/libs/preprocessor/test/debug_fail_tuple_1.c (contents, props changed)
   branches/pplib/v2/libs/preprocessor/test/debug_fail_tuple_2.c (contents, props changed)
   branches/pplib/v2/libs/preprocessor/test/debug_fail_tuple_2.cxx (contents, props changed)
   branches/pplib/v2/libs/preprocessor/test/debug_fail_tuple_3.c (contents, props changed)
   branches/pplib/v2/libs/preprocessor/test/debug_fail_tuple_3.cxx (contents, props changed)
   branches/pplib/v2/libs/preprocessor/test/debug_fail_tuple_4.c (contents, props changed)
   branches/pplib/v2/libs/preprocessor/test/debug_fail_tuple_4.cxx (contents, props changed)
Text files modified:
   branches/pplib/v2/boost/preprocessor/debug.hpp | 1
   branches/pplib/v2/boost/preprocessor/debug/assert_is_list.hpp | 17 ++++
   branches/pplib/v2/boost/preprocessor/debug/assert_is_tuple.hpp | 18 ++++
   branches/pplib/v2/boost/preprocessor/facilities/is_tuple_begin.hpp | 10 ++
   branches/pplib/v2/libs/preprocessor/test/Jamfile.v2 | 155 ++++++++++++++++++++++++++++++++++++++-
   branches/pplib/v2/libs/preprocessor/test/debug.cxx | 9 ++
   6 files changed, 202 insertions(+), 8 deletions(-)

Modified: branches/pplib/v2/boost/preprocessor/debug.hpp
==============================================================================
--- branches/pplib/v2/boost/preprocessor/debug.hpp (original)
+++ branches/pplib/v2/boost/preprocessor/debug.hpp 2011-07-11 12:14:40 EDT (Mon, 11 Jul 2011)
@@ -15,6 +15,7 @@
 # include <boost/preprocessor/debug/assert.hpp>
 # include <boost/preprocessor/debug/assert_is_array.hpp>
 # include <boost/preprocessor/debug/assert_is_list.hpp>
+# include <boost/preprocessor/debug/assert_is_seq.hpp>
 # include <boost/preprocessor/debug/assert_is_tuple.hpp>
 # include <boost/preprocessor/debug/line.hpp>
 #

Modified: branches/pplib/v2/boost/preprocessor/debug/assert_is_list.hpp
==============================================================================
--- branches/pplib/v2/boost/preprocessor/debug/assert_is_list.hpp (original)
+++ branches/pplib/v2/boost/preprocessor/debug/assert_is_list.hpp 2011-07-11 12:14:40 EDT (Mon, 11 Jul 2011)
@@ -65,12 +65,22 @@
     BOOST_PP_IIF \
       ( \
       BOOST_PP_IS_TUPLE_BEGIN(state), \
- BOOST_PP_IS_LIST_DETAIL_PROCESS_TWO_ELEMENT_TUPLE, \
+ BOOST_PP_IS_LIST_DETAIL_PROCESS_TUPLE, \
       BOOST_PP_IS_LIST_DETAIL_PROCESS_IF_BOOST_PP_NIL \
       ) \
     (state) \
 /**/
 #
+# define BOOST_PP_IS_LIST_DETAIL_PROCESS_TUPLE(x) \
+ BOOST_PP_IIF \
+ ( \
+ BOOST_PP_ASSERT_IS_TUPLE_DETAIL_RETURN(x), \
+ BOOST_PP_IS_LIST_DETAIL_PROCESS_TWO_ELEMENT_TUPLE, \
+ BOOST_PP_IS_LIST_DETAIL_RETURN_NIL \
+ ) \
+ (x) \
+/**/
+#
 # define BOOST_PP_IS_LIST_DETAIL_PROCESS_TWO_ELEMENT_TUPLE(x) \
     BOOST_PP_ASSERT_IS_TUPLE(x) \
     BOOST_PP_IIF \
@@ -94,8 +104,13 @@
     BOOST_PP_NIL \
 /**/
 #
+#define BOOST_PP_IS_LIST_DETAIL_RETURN_NIL(x) \
+ BOOST_PP_NIL \
+/**/
+#
 # define BOOST_PP_IS_LIST_DETAIL_ASSERT(x) \
     BOOST_PP_ASSERT(0) \
+ BOOST_PP_NIL \
 /**/
 #
 # define BOOST_PP_IS_LIST_DETAIL_GEN_ONE(x) \

Added: branches/pplib/v2/boost/preprocessor/debug/assert_is_seq.hpp
==============================================================================
--- (empty file)
+++ branches/pplib/v2/boost/preprocessor/debug/assert_is_seq.hpp 2011-07-11 12:14:40 EDT (Mon, 11 Jul 2011)
@@ -0,0 +1,137 @@
+# /* **************************************************************************
+# * *
+# * (C) Copyright Edward Diener 2011. *
+# * Distributed under 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) *
+# * *
+# ************************************************************************** */
+#
+# /* See http://www.boost.org for most recent version. */
+#
+# ifndef BOOST_PREPROCESSOR_DEBUG_ASSERT_IS_SEQ_HPP
+# define BOOST_PREPROCESSOR_DEBUG_ASSERT_IS_SEQ_HPP
+#
+# include <boost/preprocessor/config/config.hpp>
+# include <boost/preprocessor/comparison/equal.hpp>
+# include <boost/preprocessor/control/iif.hpp>
+# include <boost/preprocessor/control/while.hpp>
+# include <boost/preprocessor/debug/assert.hpp>
+# include <boost/preprocessor/facilities/is_empty.hpp>
+# include <boost/preprocessor/facilities/is_tuple_begin.hpp>
+# include <boost/preprocessor/logical/not.hpp>
+# include <boost/preprocessor/variadic/size.hpp>
+#
+# /* BOOST_PP_ASSERT_IS_SEQ */
+#
+# if BOOST_PP_VARIADICS
+# if defined(NDEBUG)
+# define BOOST_PP_ASSERT_IS_SEQ(x)
+#
+# else
+#
+# define BOOST_PP_ASSERT_IS_SEQ(x) \
+ BOOST_PP_IS_SEQ_DETAIL_GEN_EMPTY \
+ ( \
+ BOOST_PP_WHILE \
+ ( \
+ BOOST_PP_IS_SEQ_DETAIL_PRED, \
+ BOOST_PP_IS_SEQ_DETAIL_OP, \
+ x \
+ ) \
+ ) \
+/**/
+#
+# define BOOST_PP_IS_SEQ_DETAIL_GEN_EMPTY(x) \
+ BOOST_PP_IS_SEQ_DETAIL_GEN_EMPTY_I(x) \
+/**/
+#
+# define BOOST_PP_IS_SEQ_DETAIL_GEN_EMPTY_I(x)
+#
+# define BOOST_PP_IS_SEQ_DETAIL_PRED(d,state) \
+ BOOST_PP_IIF \
+ ( \
+ BOOST_PP_IS_TUPLE_BEGIN(state), \
+ BOOST_PP_IS_SEQ_DETAIL_GEN_ONE, \
+ BOOST_PP_IS_SEQ_DETAIL_CHECK_NIL \
+ ) \
+ (state) \
+/**/
+#
+# define BOOST_PP_IS_SEQ_DETAIL_OP(d,state) \
+ BOOST_PP_IIF \
+ ( \
+ BOOST_PP_IS_SEQ_DETAIL_IS_AFTER_FIRST_TUPLE(x), \
+ BOOST_PP_IS_SEQ_DETAIL_GET_AFTER_FIRST_TUPLE, \
+ BOOST_PP_IS_SEQ_DETAIL_GEN_NOT_TUPLE \
+ ) \
+ (state) \
+/**/
+#
+# define BOOST_PP_IS_SEQ_DETAIL_ASSERT_FIRST_TUPLE_SIZE(x) \
+ BOOST_PP_IS_SEQ_DETAIL_EMPTY \
+ ( \
+ BOOST_PP_IS_SEQ_DETAIL_ASSERT_SIZE x \
+ ) \
+/**/
+#
+# define BOOST_PP_IS_SEQ_DETAIL_GET_AFTER_FIRST_TUPLE(x) \
+ BOOST_PP_IS_SEQ_DETAIL_EMPTY x \
+/**/
+#
+# define BOOST_PP_IS_SEQ_DETAIL_GEN_NOT_TUPLE(x) \
+ BOOST_PP_IS_SEQ_DETAIL_GEN_NIL \
+/**/
+#
+# define BOOST_PP_IS_SEQ_DETAIL_IS_AFTER_FIRST_TUPLE(x) \
+ BOOST_PP_IS_SEQ_DETAIL_ASSERT_FIRST_TUPLE_SIZE(x) \
+ BOOST_PP_NOT \
+ ( \
+ BOOST_PP_IS_EMPTY \
+ ( \
+ BOOST_PP_IS_SEQ_DETAIL_EMPTY x \
+ ) \
+ ) \
+/**/
+#
+# define BOOST_PP_IS_SEQ_DETAIL_ASSERT_SIZE(...) \
+ BOOST_PP_ASSERT \
+ ( \
+ BOOST_PP_EQUAL \
+ ( \
+ BOOST_PP_VARIADIC_SIZE(__VA_ARGS__), \
+ 1 \
+ ) \
+ ) \
+/**/
+#
+# define BOOST_PP_IS_SEQ_DETAIL_EMPTY(...)
+#
+# define BOOST_PP_IS_SEQ_DETAIL_GEN_ONE(x) \
+ 1 \
+/**/
+#
+# define BOOST_PP_IS_SEQ_DETAIL_CHECK_NIL(x) \
+ BOOST_PP_ASSERT \
+ ( \
+ BOOST_PP_IS_SEQ_DETAIL_NIL(x) \
+ ) \
+ 0 \
+/**/
+#
+# define BOOST_PP_IS_SEQ_DETAIL_NIL(x) \
+ BOOST_PP_IS_EMPTY \
+ ( \
+ BOOST_PP_CAT \
+ ( \
+ BOOST_PP_IS_SEQ_DETAIL_NIL_HELPER_, \
+ x \
+ ) \
+ ) \
+/**/
+#
+# define BOOST_PP_IS_SEQ_DETAIL_NIL_HELPER_BOOST_PP_IS_SEQ_DETAIL_GEN_NIL
+#
+# endif /* NDEBUG */
+# endif /* BOOST_PP_VARIADICS */
+# endif /* BOOST_PREPROCESSOR_DEBUG_ASSERT_IS_SEQ_HPP */

Modified: branches/pplib/v2/boost/preprocessor/debug/assert_is_tuple.hpp
==============================================================================
--- branches/pplib/v2/boost/preprocessor/debug/assert_is_tuple.hpp (original)
+++ branches/pplib/v2/boost/preprocessor/debug/assert_is_tuple.hpp 2011-07-11 12:14:40 EDT (Mon, 11 Jul 2011)
@@ -38,6 +38,24 @@
       ) \
 /**/
 #
+# define BOOST_PP_ASSERT_IS_TUPLE_DETAIL_RETURN(x) \
+ BOOST_PP_IS_TUPLE_DETAIL_ASSERT \
+ ( \
+ BOOST_PP_IIF \
+ ( \
+ BOOST_PP_IS_TUPLE_BEGIN(x), \
+ BOOST_PP_IS_TUPLE_DETAIL_IS_NOT_AFTER, \
+ BOOST_PP_IS_TUPLE_DETAIL_GEN_ZERO \
+ ) \
+ (x) \
+ ) \
+/**/
+#
+# define BOOST_PP_IS_TUPLE_DETAIL_ASSERT(x) \
+ BOOST_PP_ASSERT(x) \
+ x \
+/**/
+#
 # define BOOST_PP_IS_TUPLE_DETAIL_IS_NOT_AFTER(x) \
     BOOST_PP_IS_EMPTY(BOOST_PP_IS_TUPLE_DETAIL_EXPAND_AFTER x) \
 /**/

Modified: branches/pplib/v2/boost/preprocessor/facilities/is_tuple_begin.hpp
==============================================================================
--- branches/pplib/v2/boost/preprocessor/facilities/is_tuple_begin.hpp (original)
+++ branches/pplib/v2/boost/preprocessor/facilities/is_tuple_begin.hpp 2011-07-11 12:14:40 EDT (Mon, 11 Jul 2011)
@@ -14,12 +14,22 @@
 #
 # include <boost/preprocessor/config/config.hpp>
 # include <boost/preprocessor/arithmetic/dec.hpp>
+# include <boost/preprocessor/control/if.hpp>
 # include <boost/preprocessor/variadic/size.hpp>
 #
 # /* BOOST_PP_IS_TUPLE_BEGIN */
 #
 # if BOOST_PP_VARIADICS
 # define BOOST_PP_IS_TUPLE_BEGIN(x) \
+ BOOST_PP_IF \
+ ( \
+ BOOST_PP_IS_TUPLE_BEGIN_DETAIL(x), \
+ 1, \
+ 0 \
+ ) \
+/**/
+#
+# define BOOST_PP_IS_TUPLE_BEGIN_DETAIL(x) \
     BOOST_PP_DEC \
       ( \
       BOOST_PP_VARIADIC_SIZE \

Modified: branches/pplib/v2/libs/preprocessor/test/Jamfile.v2
==============================================================================
--- branches/pplib/v2/libs/preprocessor/test/Jamfile.v2 (original)
+++ branches/pplib/v2/libs/preprocessor/test/Jamfile.v2 2011-07-11 12:14:40 EDT (Mon, 11 Jul 2011)
@@ -142,12 +142,77 @@
             <define>BOOST_PP_VARIADICS=1
             <toolset>gcc:<cxxflags>-std=c++0x
         ]
+ [ compile-fail debug_fail_seq.cpp
+ : <variant>debug
+ <define>BOOST_PP_VARIADICS=1
+ <toolset>gcc:<cxxflags>-std=c++0x
+ ]
+ [ compile-fail debug_fail_tuple_2.cpp
+ : <variant>debug
+ <define>BOOST_PP_VARIADICS=1
+ <toolset>gcc:<cxxflags>-std=c++0x
+ ]
+ [ compile-fail debug_fail_array_2.cpp
+ : <variant>debug
+ <define>BOOST_PP_VARIADICS=1
+ <toolset>gcc:<cxxflags>-std=c++0x
+ ]
+ [ compile-fail debug_fail_list_2.cpp
+ : <variant>debug
+ <define>BOOST_PP_VARIADICS=1
+ <toolset>gcc:<cxxflags>-std=c++0x
+ ]
+ [ compile-fail debug_fail_seq_2.cpp
+ : <variant>debug
+ <define>BOOST_PP_VARIADICS=1
+ <toolset>gcc:<cxxflags>-std=c++0x
+ ]
+ [ compile-fail debug_fail_tuple_3.cpp
+ : <variant>debug
+ <define>BOOST_PP_VARIADICS=1
+ <toolset>gcc:<cxxflags>-std=c++0x
+ ]
+ [ compile-fail debug_fail_array_3.cpp
+ : <variant>debug
+ <define>BOOST_PP_VARIADICS=1
+ <toolset>gcc:<cxxflags>-std=c++0x
+ ]
+ [ compile-fail debug_fail_list_3.cpp
+ : <variant>debug
+ <define>BOOST_PP_VARIADICS=1
+ <toolset>gcc:<cxxflags>-std=c++0x
+ ]
+ [ compile-fail debug_fail_seq_3.cpp
+ : <variant>debug
+ <define>BOOST_PP_VARIADICS=1
+ <toolset>gcc:<cxxflags>-std=c++0x
+ ]
+ [ compile-fail debug_fail_tuple_4.cpp
+ : <variant>debug
+ <define>BOOST_PP_VARIADICS=1
+ <toolset>gcc:<cxxflags>-std=c++0x
+ ]
+ [ compile-fail debug_fail_array_4.cpp
+ : <variant>debug
+ <define>BOOST_PP_VARIADICS=1
+ <toolset>gcc:<cxxflags>-std=c++0x
+ ]
+ [ compile-fail debug_fail_list_4.cpp
+ : <variant>debug
+ <define>BOOST_PP_VARIADICS=1
+ <toolset>gcc:<cxxflags>-std=c++0x
+ ]
+ [ compile-fail debug_fail_seq_4.cpp
+ : <variant>debug
+ <define>BOOST_PP_VARIADICS=1
+ <toolset>gcc:<cxxflags>-std=c++0x
+ ]
    ;
 
 test-suite preprocessor_dbg
- :
- : <toolset>msvc
- ;
+ :
+ : <toolset>msvc
+ ;
 
 test-suite preprocessor_c
    :
@@ -289,9 +354,87 @@
             <toolset>gcc:<cflags>-std=c99
           : debug_fail_list_c
         ]
+ [ compile-fail debug_fail_seq.c
+ : <variant>debug
+ <define>BOOST_PP_VARIADICS=1
+ <toolset>gcc:<cflags>-std=c99
+ : debug_fail_seq_c
+ ]
+ [ compile-fail debug_fail_tuple_2.c
+ : <variant>debug
+ <define>BOOST_PP_VARIADICS=1
+ <toolset>gcc:<cflags>-std=c99
+ : debug_fail_tuple_2_c
+ ]
+ [ compile-fail debug_fail_array_2.c
+ : <variant>debug
+ <define>BOOST_PP_VARIADICS=1
+ <toolset>gcc:<cflags>-std=c99
+ : debug_fail_array_2_c
+ ]
+ [ compile-fail debug_fail_list_2.c
+ : <variant>debug
+ <define>BOOST_PP_VARIADICS=1
+ <toolset>gcc:<cflags>-std=c99
+ : debug_fail_list_2_c
+ ]
+ [ compile-fail debug_fail_seq_2.c
+ : <variant>debug
+ <define>BOOST_PP_VARIADICS=1
+ <toolset>gcc:<cflags>-std=c99
+ : debug_fail_seq_2_c
+ ]
+ [ compile-fail debug_fail_tuple_3.c
+ : <variant>debug
+ <define>BOOST_PP_VARIADICS=1
+ <toolset>gcc:<cflags>-std=c99
+ : debug_fail_tuple_3_c
+ ]
+ [ compile-fail debug_fail_array_3.c
+ : <variant>debug
+ <define>BOOST_PP_VARIADICS=1
+ <toolset>gcc:<cflags>-std=c99
+ : debug_fail_array_3_c
+ ]
+ [ compile-fail debug_fail_list_3.c
+ : <variant>debug
+ <define>BOOST_PP_VARIADICS=1
+ <toolset>gcc:<cflags>-std=c99
+ : debug_fail_list_3_c
+ ]
+ [ compile-fail debug_fail_seq_3.c
+ : <variant>debug
+ <define>BOOST_PP_VARIADICS=1
+ <toolset>gcc:<cflags>-std=c99
+ : debug_fail_seq_3_c
+ ]
+ [ compile-fail debug_fail_tuple_4.c
+ : <variant>debug
+ <define>BOOST_PP_VARIADICS=1
+ <toolset>gcc:<cflags>-std=c99
+ : debug_fail_tuple_4_c
+ ]
+ [ compile-fail debug_fail_array_4.c
+ : <variant>debug
+ <define>BOOST_PP_VARIADICS=1
+ <toolset>gcc:<cflags>-std=c99
+ : debug_fail_array_4_c
+ ]
+ [ compile-fail debug_fail_list_4.c
+ : <variant>debug
+ <define>BOOST_PP_VARIADICS=1
+ <toolset>gcc:<cflags>-std=c99
+ : debug_fail_list_4_c
+ ]
+ [ compile-fail debug_fail_seq_4.c
+ : <variant>debug
+ <define>BOOST_PP_VARIADICS=1
+ <toolset>gcc:<cflags>-std=c99
+ : debug_fail_seq_4_c
+ ]
    ;
 
 test-suite preprocessor_c_dbg
- :
- : <toolset>msvc
- ;
+ :
+ : <toolset>msvc
+ ;

Modified: branches/pplib/v2/libs/preprocessor/test/debug.cxx
==============================================================================
--- branches/pplib/v2/libs/preprocessor/test/debug.cxx (original)
+++ branches/pplib/v2/libs/preprocessor/test/debug.cxx 2011-07-11 12:14:40 EDT (Mon, 11 Jul 2011)
@@ -24,8 +24,15 @@
 
 # if BOOST_PP_VARIADICS
 
-BOOST_PP_ASSERT_IS_TUPLE((x,3,e,2))
+BOOST_PP_ASSERT_IS_TUPLE((t,3,e,2))
+BOOST_PP_ASSERT_IS_TUPLE(((y,s,w),3,e,2))
 BOOST_PP_ASSERT_IS_ARRAY((4,(x,3,e,2)))
+BOOST_PP_ASSERT_IS_ARRAY((6,(x,3,e,2,(4,(x,3,e,2)),$)))
 BOOST_PP_ASSERT_IS_LIST((4,(x,BOOST_PP_NIL)))
+BOOST_PP_ASSERT_IS_LIST(((3,6m,irj),(x,BOOST_PP_NIL)))
+// BOOST_PP_ASSERT_IS_SEQ((x)(y)(z)(2)(3)(4))
+// BOOST_PP_ASSERT_IS_SEQ((x)(y)(z)((1,2))(3)(4))
+// BOOST_PP_ASSERT_IS_SEQ((x)(y)(z)((1,2))(3)((4,(x,BOOST_PP_NIL))))
+// BOOST_PP_ASSERT_IS_SEQ((x)(y)((x)(y)(z)(2)(3)(4))((1,2))(3)((4,(x,BOOST_PP_NIL))))
 
 # endif
\ No newline at end of file

Added: branches/pplib/v2/libs/preprocessor/test/debug_fail_array_2.c
==============================================================================
--- (empty file)
+++ branches/pplib/v2/libs/preprocessor/test/debug_fail_array_2.c 2011-07-11 12:14:40 EDT (Mon, 11 Jul 2011)
@@ -0,0 +1,12 @@
+# /* **************************************************************************
+# * *
+# * (C) Copyright Edward Diener 2011.
+# * Distributed under 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)
+# * *
+# ************************************************************************** */
+#
+# /* See http://www.boost.org for most recent version. */
+#
+# include <libs/preprocessor/test/debug_fail_array_2.cxx>

Added: branches/pplib/v2/libs/preprocessor/test/debug_fail_array_2.cxx
==============================================================================
--- (empty file)
+++ branches/pplib/v2/libs/preprocessor/test/debug_fail_array_2.cxx 2011-07-11 12:14:40 EDT (Mon, 11 Jul 2011)
@@ -0,0 +1,19 @@
+# /* **************************************************************************
+# * *
+# * (C) Copyright Edward Diener 2011.
+# * Distributed under 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)
+# * *
+# ************************************************************************** */
+#
+# /* See http://www.boost.org for most recent version. */
+#
+# include <boost/preprocessor/debug.hpp>
+# include <libs/preprocessor/test/test.h>
+
+# if BOOST_PP_VARIADICS
+
+BOOST_PP_ASSERT_IS_ARRAY((3,(x,3,e,2)))
+
+# endif

Added: branches/pplib/v2/libs/preprocessor/test/debug_fail_array_3.c
==============================================================================
--- (empty file)
+++ branches/pplib/v2/libs/preprocessor/test/debug_fail_array_3.c 2011-07-11 12:14:40 EDT (Mon, 11 Jul 2011)
@@ -0,0 +1,12 @@
+# /* **************************************************************************
+# * *
+# * (C) Copyright Edward Diener 2011.
+# * Distributed under 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)
+# * *
+# ************************************************************************** */
+#
+# /* See http://www.boost.org for most recent version. */
+#
+# include <libs/preprocessor/test/debug_fail_array_3.cxx>

Added: branches/pplib/v2/libs/preprocessor/test/debug_fail_array_3.cxx
==============================================================================
--- (empty file)
+++ branches/pplib/v2/libs/preprocessor/test/debug_fail_array_3.cxx 2011-07-11 12:14:40 EDT (Mon, 11 Jul 2011)
@@ -0,0 +1,19 @@
+# /* **************************************************************************
+# * *
+# * (C) Copyright Edward Diener 2011.
+# * Distributed under 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)
+# * *
+# ************************************************************************** */
+#
+# /* See http://www.boost.org for most recent version. */
+#
+# include <boost/preprocessor/debug.hpp>
+# include <libs/preprocessor/test/test.h>
+
+# if BOOST_PP_VARIADICS
+
+BOOST_PP_ASSERT_IS_ARRAY(tree)
+
+# endif

Added: branches/pplib/v2/libs/preprocessor/test/debug_fail_array_4.c
==============================================================================
--- (empty file)
+++ branches/pplib/v2/libs/preprocessor/test/debug_fail_array_4.c 2011-07-11 12:14:40 EDT (Mon, 11 Jul 2011)
@@ -0,0 +1,12 @@
+# /* **************************************************************************
+# * *
+# * (C) Copyright Edward Diener 2011.
+# * Distributed under 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)
+# * *
+# ************************************************************************** */
+#
+# /* See http://www.boost.org for most recent version. */
+#
+# include <libs/preprocessor/test/debug_fail_array_4.cxx>

Added: branches/pplib/v2/libs/preprocessor/test/debug_fail_array_4.cxx
==============================================================================
--- (empty file)
+++ branches/pplib/v2/libs/preprocessor/test/debug_fail_array_4.cxx 2011-07-11 12:14:40 EDT (Mon, 11 Jul 2011)
@@ -0,0 +1,19 @@
+# /* **************************************************************************
+# * *
+# * (C) Copyright Edward Diener 2011.
+# * Distributed under 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)
+# * *
+# ************************************************************************** */
+#
+# /* See http://www.boost.org for most recent version. */
+#
+# include <boost/preprocessor/debug.hpp>
+# include <libs/preprocessor/test/test.h>
+
+# if BOOST_PP_VARIADICS
+
+BOOST_PP_ASSERT_IS_ARRAY((3,(3,5,6) xc))
+
+# endif

Added: branches/pplib/v2/libs/preprocessor/test/debug_fail_array_5.cxx
==============================================================================
--- (empty file)
+++ branches/pplib/v2/libs/preprocessor/test/debug_fail_array_5.cxx 2011-07-11 12:14:40 EDT (Mon, 11 Jul 2011)
@@ -0,0 +1,19 @@
+# /* **************************************************************************
+# * *
+# * (C) Copyright Edward Diener 2011.
+# * Distributed under 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)
+# * *
+# ************************************************************************** */
+#
+# /* See http://www.boost.org for most recent version. */
+#
+# include <boost/preprocessor/debug.hpp>
+# include <libs/preprocessor/test/test.h>
+
+# if BOOST_PP_VARIADICS
+
+BOOST_PP_ASSERT_IS_ARRAY(tree)
+
+# endif

Added: branches/pplib/v2/libs/preprocessor/test/debug_fail_list_2.c
==============================================================================
--- (empty file)
+++ branches/pplib/v2/libs/preprocessor/test/debug_fail_list_2.c 2011-07-11 12:14:40 EDT (Mon, 11 Jul 2011)
@@ -0,0 +1,12 @@
+# /* **************************************************************************
+# * *
+# * (C) Copyright Edward Diener 2011.
+# * Distributed under 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)
+# * *
+# ************************************************************************** */
+#
+# /* See http://www.boost.org for most recent version. */
+#
+# include <libs/preprocessor/test/debug_fail_list_2.cxx>

Added: branches/pplib/v2/libs/preprocessor/test/debug_fail_list_2.cxx
==============================================================================
--- (empty file)
+++ branches/pplib/v2/libs/preprocessor/test/debug_fail_list_2.cxx 2011-07-11 12:14:40 EDT (Mon, 11 Jul 2011)
@@ -0,0 +1,19 @@
+# /* **************************************************************************
+# * *
+# * (C) Copyright Edward Diener 2011.
+# * Distributed under 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)
+# * *
+# ************************************************************************** */
+#
+# /* See http://www.boost.org for most recent version. */
+#
+# include <boost/preprocessor/debug.hpp>
+# include <libs/preprocessor/test/test.h>
+
+# if BOOST_PP_VARIADICS
+
+BOOST_PP_ASSERT_IS_LIST((4,(5,BOOST_PP_NIL),6))
+
+# endif

Added: branches/pplib/v2/libs/preprocessor/test/debug_fail_list_3.c
==============================================================================
--- (empty file)
+++ branches/pplib/v2/libs/preprocessor/test/debug_fail_list_3.c 2011-07-11 12:14:40 EDT (Mon, 11 Jul 2011)
@@ -0,0 +1,12 @@
+# /* **************************************************************************
+# * *
+# * (C) Copyright Edward Diener 2011.
+# * Distributed under 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)
+# * *
+# ************************************************************************** */
+#
+# /* See http://www.boost.org for most recent version. */
+#
+# include <libs/preprocessor/test/debug_fail_list_3.cxx>

Added: branches/pplib/v2/libs/preprocessor/test/debug_fail_list_3.cxx
==============================================================================
--- (empty file)
+++ branches/pplib/v2/libs/preprocessor/test/debug_fail_list_3.cxx 2011-07-11 12:14:40 EDT (Mon, 11 Jul 2011)
@@ -0,0 +1,19 @@
+# /* **************************************************************************
+# * *
+# * (C) Copyright Edward Diener 2011.
+# * Distributed under 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)
+# * *
+# ************************************************************************** */
+#
+# /* See http://www.boost.org for most recent version. */
+#
+# include <boost/preprocessor/debug.hpp>
+# include <libs/preprocessor/test/test.h>
+
+# if BOOST_PP_VARIADICS
+
+BOOST_PP_ASSERT_IS_LIST(4,(5,BOOST_PP_NIL),6)
+
+# endif

Added: branches/pplib/v2/libs/preprocessor/test/debug_fail_list_4.c
==============================================================================
--- (empty file)
+++ branches/pplib/v2/libs/preprocessor/test/debug_fail_list_4.c 2011-07-11 12:14:40 EDT (Mon, 11 Jul 2011)
@@ -0,0 +1,12 @@
+# /* **************************************************************************
+# * *
+# * (C) Copyright Edward Diener 2011.
+# * Distributed under 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)
+# * *
+# ************************************************************************** */
+#
+# /* See http://www.boost.org for most recent version. */
+#
+# include <libs/preprocessor/test/debug_fail_list_4.cxx>

Added: branches/pplib/v2/libs/preprocessor/test/debug_fail_list_4.cxx
==============================================================================
--- (empty file)
+++ branches/pplib/v2/libs/preprocessor/test/debug_fail_list_4.cxx 2011-07-11 12:14:40 EDT (Mon, 11 Jul 2011)
@@ -0,0 +1,19 @@
+# /* **************************************************************************
+# * *
+# * (C) Copyright Edward Diener 2011.
+# * Distributed under 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)
+# * *
+# ************************************************************************** */
+#
+# /* See http://www.boost.org for most recent version. */
+#
+# include <boost/preprocessor/debug.hpp>
+# include <libs/preprocessor/test/test.h>
+
+# if BOOST_PP_VARIADICS
+
+BOOST_PP_ASSERT_IS_LIST((tt,(5,(uu,BOOST_PP_NIL yy))))
+
+# endif

Added: branches/pplib/v2/libs/preprocessor/test/debug_fail_seq.c
==============================================================================
--- (empty file)
+++ branches/pplib/v2/libs/preprocessor/test/debug_fail_seq.c 2011-07-11 12:14:40 EDT (Mon, 11 Jul 2011)
@@ -0,0 +1,12 @@
+# /* **************************************************************************
+# * *
+# * (C) Copyright Edward Diener 2011.
+# * Distributed under 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)
+# * *
+# ************************************************************************** */
+#
+# /* See http://www.boost.org for most recent version. */
+#
+# include <libs/preprocessor/test/debug_fail_seq.cxx>

Added: branches/pplib/v2/libs/preprocessor/test/debug_fail_seq.cxx
==============================================================================
--- (empty file)
+++ branches/pplib/v2/libs/preprocessor/test/debug_fail_seq.cxx 2011-07-11 12:14:40 EDT (Mon, 11 Jul 2011)
@@ -0,0 +1,19 @@
+# /* **************************************************************************
+# * *
+# * (C) Copyright Edward Diener 2011.
+# * Distributed under 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)
+# * *
+# ************************************************************************** */
+#
+# /* See http://www.boost.org for most recent version. */
+#
+# include <boost/preprocessor/debug.hpp>
+# include <libs/preprocessor/test/test.h>
+
+# if BOOST_PP_VARIADICS
+
+BOOST_PP_ASSERT_IS_SEQ((y,(x,3,e,2)))
+
+# endif

Added: branches/pplib/v2/libs/preprocessor/test/debug_fail_seq_2.c
==============================================================================
--- (empty file)
+++ branches/pplib/v2/libs/preprocessor/test/debug_fail_seq_2.c 2011-07-11 12:14:40 EDT (Mon, 11 Jul 2011)
@@ -0,0 +1,12 @@
+# /* **************************************************************************
+# * *
+# * (C) Copyright Edward Diener 2011.
+# * Distributed under 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)
+# * *
+# ************************************************************************** */
+#
+# /* See http://www.boost.org for most recent version. */
+#
+# include <libs/preprocessor/test/debug_fail_seq_2.cxx>

Added: branches/pplib/v2/libs/preprocessor/test/debug_fail_seq_2.cxx
==============================================================================
--- (empty file)
+++ branches/pplib/v2/libs/preprocessor/test/debug_fail_seq_2.cxx 2011-07-11 12:14:40 EDT (Mon, 11 Jul 2011)
@@ -0,0 +1,19 @@
+# /* **************************************************************************
+# * *
+# * (C) Copyright Edward Diener 2011.
+# * Distributed under 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)
+# * *
+# ************************************************************************** */
+#
+# /* See http://www.boost.org for most recent version. */
+#
+# include <boost/preprocessor/debug.hpp>
+# include <libs/preprocessor/test/test.h>
+
+# if BOOST_PP_VARIADICS
+
+BOOST_PP_ASSERT_IS_SEQ((y)2(x))
+
+# endif

Added: branches/pplib/v2/libs/preprocessor/test/debug_fail_seq_3.c
==============================================================================
--- (empty file)
+++ branches/pplib/v2/libs/preprocessor/test/debug_fail_seq_3.c 2011-07-11 12:14:40 EDT (Mon, 11 Jul 2011)
@@ -0,0 +1,12 @@
+# /* **************************************************************************
+# * *
+# * (C) Copyright Edward Diener 2011.
+# * Distributed under 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)
+# * *
+# ************************************************************************** */
+#
+# /* See http://www.boost.org for most recent version. */
+#
+# include <libs/preprocessor/test/debug_fail_seq_3.cxx>

Added: branches/pplib/v2/libs/preprocessor/test/debug_fail_seq_3.cxx
==============================================================================
--- (empty file)
+++ branches/pplib/v2/libs/preprocessor/test/debug_fail_seq_3.cxx 2011-07-11 12:14:40 EDT (Mon, 11 Jul 2011)
@@ -0,0 +1,19 @@
+# /* **************************************************************************
+# * *
+# * (C) Copyright Edward Diener 2011.
+# * Distributed under 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)
+# * *
+# ************************************************************************** */
+#
+# /* See http://www.boost.org for most recent version. */
+#
+# include <boost/preprocessor/debug.hpp>
+# include <libs/preprocessor/test/test.h>
+
+# if BOOST_PP_VARIADICS
+
+BOOST_PP_ASSERT_IS_SEQ(y(z)(x))
+
+# endif

Added: branches/pplib/v2/libs/preprocessor/test/debug_fail_seq_4.c
==============================================================================
--- (empty file)
+++ branches/pplib/v2/libs/preprocessor/test/debug_fail_seq_4.c 2011-07-11 12:14:40 EDT (Mon, 11 Jul 2011)
@@ -0,0 +1,12 @@
+# /* **************************************************************************
+# * *
+# * (C) Copyright Edward Diener 2011.
+# * Distributed under 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)
+# * *
+# ************************************************************************** */
+#
+# /* See http://www.boost.org for most recent version. */
+#
+# include <libs/preprocessor/test/debug_fail_seq_4.cxx>

Added: branches/pplib/v2/libs/preprocessor/test/debug_fail_seq_4.cxx
==============================================================================
--- (empty file)
+++ branches/pplib/v2/libs/preprocessor/test/debug_fail_seq_4.cxx 2011-07-11 12:14:40 EDT (Mon, 11 Jul 2011)
@@ -0,0 +1,19 @@
+# /* **************************************************************************
+# * *
+# * (C) Copyright Edward Diener 2011.
+# * Distributed under 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)
+# * *
+# ************************************************************************** */
+#
+# /* See http://www.boost.org for most recent version. */
+#
+# include <boost/preprocessor/debug.hpp>
+# include <libs/preprocessor/test/test.h>
+
+# if BOOST_PP_VARIADICS
+
+BOOST_PP_ASSERT_IS_SEQ((z)(x)(72)64)
+
+# endif

Added: branches/pplib/v2/libs/preprocessor/test/debug_fail_tuple_1.c
==============================================================================
--- (empty file)
+++ branches/pplib/v2/libs/preprocessor/test/debug_fail_tuple_1.c 2011-07-11 12:14:40 EDT (Mon, 11 Jul 2011)
@@ -0,0 +1,12 @@
+# /* **************************************************************************
+# * *
+# * (C) Copyright Edward Diener 2011.
+# * Distributed under 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)
+# * *
+# ************************************************************************** */
+#
+# /* See http://www.boost.org for most recent version. */
+#
+# include <libs/preprocessor/test/debug_fail_tuple_1.cxx>

Added: branches/pplib/v2/libs/preprocessor/test/debug_fail_tuple_2.c
==============================================================================
--- (empty file)
+++ branches/pplib/v2/libs/preprocessor/test/debug_fail_tuple_2.c 2011-07-11 12:14:40 EDT (Mon, 11 Jul 2011)
@@ -0,0 +1,12 @@
+# /* **************************************************************************
+# * *
+# * (C) Copyright Edward Diener 2011.
+# * Distributed under 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)
+# * *
+# ************************************************************************** */
+#
+# /* See http://www.boost.org for most recent version. */
+#
+# include <libs/preprocessor/test/debug_fail_tuple_2.cxx>

Added: branches/pplib/v2/libs/preprocessor/test/debug_fail_tuple_2.cxx
==============================================================================
--- (empty file)
+++ branches/pplib/v2/libs/preprocessor/test/debug_fail_tuple_2.cxx 2011-07-11 12:14:40 EDT (Mon, 11 Jul 2011)
@@ -0,0 +1,19 @@
+# /* **************************************************************************
+# * *
+# * (C) Copyright Edward Diener 2011.
+# * Distributed under 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)
+# * *
+# ************************************************************************** */
+#
+# /* See http://www.boost.org for most recent version. */
+#
+# include <boost/preprocessor/debug.hpp>
+# include <libs/preprocessor/test/test.h>
+
+# if BOOST_PP_VARIADICS
+
+BOOST_PP_ASSERT_IS_TUPLE(op(x,3,e,2))
+
+# endif

Added: branches/pplib/v2/libs/preprocessor/test/debug_fail_tuple_3.c
==============================================================================
--- (empty file)
+++ branches/pplib/v2/libs/preprocessor/test/debug_fail_tuple_3.c 2011-07-11 12:14:40 EDT (Mon, 11 Jul 2011)
@@ -0,0 +1,12 @@
+# /* **************************************************************************
+# * *
+# * (C) Copyright Edward Diener 2011.
+# * Distributed under 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)
+# * *
+# ************************************************************************** */
+#
+# /* See http://www.boost.org for most recent version. */
+#
+# include <libs/preprocessor/test/debug_fail_tuple_3.cxx>

Added: branches/pplib/v2/libs/preprocessor/test/debug_fail_tuple_3.cxx
==============================================================================
--- (empty file)
+++ branches/pplib/v2/libs/preprocessor/test/debug_fail_tuple_3.cxx 2011-07-11 12:14:40 EDT (Mon, 11 Jul 2011)
@@ -0,0 +1,19 @@
+# /* **************************************************************************
+# * *
+# * (C) Copyright Edward Diener 2011.
+# * Distributed under 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)
+# * *
+# ************************************************************************** */
+#
+# /* See http://www.boost.org for most recent version. */
+#
+# include <boost/preprocessor/debug.hpp>
+# include <libs/preprocessor/test/test.h>
+
+# if BOOST_PP_VARIADICS
+
+BOOST_PP_ASSERT_IS_TUPLE(x,3,e,2)
+
+# endif

Added: branches/pplib/v2/libs/preprocessor/test/debug_fail_tuple_4.c
==============================================================================
--- (empty file)
+++ branches/pplib/v2/libs/preprocessor/test/debug_fail_tuple_4.c 2011-07-11 12:14:40 EDT (Mon, 11 Jul 2011)
@@ -0,0 +1,12 @@
+# /* **************************************************************************
+# * *
+# * (C) Copyright Edward Diener 2011.
+# * Distributed under 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)
+# * *
+# ************************************************************************** */
+#
+# /* See http://www.boost.org for most recent version. */
+#
+# include <libs/preprocessor/test/debug_fail_tuple_4.cxx>

Added: branches/pplib/v2/libs/preprocessor/test/debug_fail_tuple_4.cxx
==============================================================================
--- (empty file)
+++ branches/pplib/v2/libs/preprocessor/test/debug_fail_tuple_4.cxx 2011-07-11 12:14:40 EDT (Mon, 11 Jul 2011)
@@ -0,0 +1,19 @@
+# /* **************************************************************************
+# * *
+# * (C) Copyright Edward Diener 2011.
+# * Distributed under 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)
+# * *
+# ************************************************************************** */
+#
+# /* See http://www.boost.org for most recent version. */
+#
+# include <boost/preprocessor/debug.hpp>
+# include <libs/preprocessor/test/test.h>
+
+# if BOOST_PP_VARIADICS
+
+BOOST_PP_ASSERT_IS_TUPLE((x,3,e,2)(y,rr))
+
+# endif


Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk