Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r70816 - in branches/pplib/variadics/boost/preprocessor: . config facilities seq tuple tuple/detail
From: eldiener_at_[hidden]
Date: 2011-04-01 09:24:24


Author: eldiener
Date: 2011-04-01 09:24:22 EDT (Fri, 01 Apr 2011)
New Revision: 70816
URL: http://svn.boost.org/trac/boost/changeset/70816

Log:
Fixed overload problem
Added:
   branches/pplib/variadics/boost/preprocessor/variadic.hpp (contents, props changed)
Text files modified:
   branches/pplib/variadics/boost/preprocessor/array.hpp | 6 +
   branches/pplib/variadics/boost/preprocessor/config/variadics.hpp | 21 +++-
   branches/pplib/variadics/boost/preprocessor/facilities/overload.hpp | 1
   branches/pplib/variadics/boost/preprocessor/list.hpp | 4
   branches/pplib/variadics/boost/preprocessor/seq.hpp | 3
   branches/pplib/variadics/boost/preprocessor/seq/to_list.hpp | 1
   branches/pplib/variadics/boost/preprocessor/tuple.hpp | 4
   branches/pplib/variadics/boost/preprocessor/tuple/detail/use_overload.hpp | 167 +++++++++++++++++++++++++++++++++++++--
   branches/pplib/variadics/boost/preprocessor/tuple/eat.hpp | 3
   branches/pplib/variadics/boost/preprocessor/tuple/elem.hpp | 5
   branches/pplib/variadics/boost/preprocessor/tuple/rem.hpp | 7 +
   branches/pplib/variadics/boost/preprocessor/tuple/reverse.hpp | 5
   branches/pplib/variadics/boost/preprocessor/tuple/size.hpp | 4
   branches/pplib/variadics/boost/preprocessor/tuple/to_array.hpp | 2
   branches/pplib/variadics/boost/preprocessor/tuple/to_list.hpp | 5
   branches/pplib/variadics/boost/preprocessor/tuple/to_seq.hpp | 6
   16 files changed, 211 insertions(+), 33 deletions(-)

Modified: branches/pplib/variadics/boost/preprocessor/array.hpp
==============================================================================
--- branches/pplib/variadics/boost/preprocessor/array.hpp (original)
+++ branches/pplib/variadics/boost/preprocessor/array.hpp 2011-04-01 09:24:22 EDT (Fri, 01 Apr 2011)
@@ -7,6 +7,8 @@
 # * *
 # ************************************************************************** */
 #
+# /* Revised by Edward Diener (2011) */
+#
 # /* See http://www.boost.org for most recent version. */
 #
 # ifndef BOOST_PREPROCESSOR_ARRAY_HPP
@@ -14,6 +16,7 @@
 #
 # include <boost/preprocessor/array/data.hpp>
 # include <boost/preprocessor/array/elem.hpp>
+# include <boost/preprocessor/array/enum.hpp>
 # include <boost/preprocessor/array/insert.hpp>
 # include <boost/preprocessor/array/pop_back.hpp>
 # include <boost/preprocessor/array/pop_front.hpp>
@@ -23,5 +26,8 @@
 # include <boost/preprocessor/array/replace.hpp>
 # include <boost/preprocessor/array/reverse.hpp>
 # include <boost/preprocessor/array/size.hpp>
+# include <boost/preprocessor/array/to_list.hpp>
+# include <boost/preprocessor/array/to_seq.hpp>
+# include <boost/preprocessor/array/to_tuple.hpp>
 #
 # endif

Modified: branches/pplib/variadics/boost/preprocessor/config/variadics.hpp
==============================================================================
--- branches/pplib/variadics/boost/preprocessor/config/variadics.hpp (original)
+++ branches/pplib/variadics/boost/preprocessor/config/variadics.hpp 2011-04-01 09:24:22 EDT (Fri, 01 Apr 2011)
@@ -12,16 +12,15 @@
 # ifndef BOOST_PREPROCESSOR_CONFIG_VARIADICS_HPP
 # define BOOST_PREPROCESSOR_CONFIG_VARIADICS_HPP
 #
-# if defined(BOOST_PP_TEST_NO_VARIADICS)
-/* This macro is purely for testing purposes so that we can
- test Boost PP without variadic macro support even on
- compilers that support variadic macros by defining
- BOOST_PP_TEST_NO_VARIADICS on the command line. We can remove
- this after the intiial tests.
+# if defined(BOOST_PP_NO_VARIADICS)
+/*
+ This macro allows an end-user to turn off variadic macro
+ support in Boost PP even on compilers that support variadic
+ macros.
 */
 # define BOOST_PP_VARIADICS 0
 #
-# else // !defined(BOOST_PP_TEST_NO_VARIADICS)
+# else // !defined(BOOST_PP_NO_VARIADICS)
 #
 # if 1
 /* This is the code we will use. It is essentially a duplication
@@ -32,6 +31,12 @@
 // GCC-XML emulates other compilers, it has to appear first here!
 # define BOOST_PP_VARIADICS 0
 #
+#elif defined __WAVE__
+// Wave preprocessor
+#if !defined(__WAVE_HAS_VARIADICS__)
+# define BOOST_PP_VARIADICS 0
+#endif
+#
 #elif defined __CUDACC__
 // NVIDIA CUDA C++ compiler for GPU
 #
@@ -163,6 +168,6 @@
 #
 # endif // 1
 #
-# endif // BOOST_PP_TEST_NO_VARIADICS
+# endif // BOOST_PP_NO_VARIADICS
 #
 # endif // BOOST_PREPROCESSOR_CONFIG_VARIADICS_HPP

Modified: branches/pplib/variadics/boost/preprocessor/facilities/overload.hpp
==============================================================================
--- branches/pplib/variadics/boost/preprocessor/facilities/overload.hpp (original)
+++ branches/pplib/variadics/boost/preprocessor/facilities/overload.hpp 2011-04-01 09:24:22 EDT (Fri, 01 Apr 2011)
@@ -1,6 +1,7 @@
 # /* **************************************************************************
 # * *
 # * (C) Copyright Paul Mensonides 2011.
+# * (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)

Modified: branches/pplib/variadics/boost/preprocessor/list.hpp
==============================================================================
--- branches/pplib/variadics/boost/preprocessor/list.hpp (original)
+++ branches/pplib/variadics/boost/preprocessor/list.hpp 2011-04-01 09:24:22 EDT (Fri, 01 Apr 2011)
@@ -1,6 +1,7 @@
 # /* Copyright (C) 2001
 # * Housemarque Oy
 # * http://www.housemarque.com
+# * Copyright (C) 2011 Edward Diener
 # *
 # * Distributed under the Boost Software License, Version 1.0. (See
 # * accompanying file LICENSE_1_0.txt or copy at
@@ -8,6 +9,7 @@
 # */
 #
 # /* Revised by Paul Mensonides (2002) */
+# /* Revised by Edward Diener (2011) */
 #
 # /* See http://www.boost.org for most recent version. */
 #
@@ -29,6 +31,8 @@
 # include <boost/preprocessor/list/rest_n.hpp>
 # include <boost/preprocessor/list/reverse.hpp>
 # include <boost/preprocessor/list/size.hpp>
+# include <boost/preprocessor/list/to_array.hpp>
+# include <boost/preprocessor/list/to_seq.hpp>
 # include <boost/preprocessor/list/to_tuple.hpp>
 # include <boost/preprocessor/list/transform.hpp>
 #

Modified: branches/pplib/variadics/boost/preprocessor/seq.hpp
==============================================================================
--- branches/pplib/variadics/boost/preprocessor/seq.hpp (original)
+++ branches/pplib/variadics/boost/preprocessor/seq.hpp 2011-04-01 09:24:22 EDT (Fri, 01 Apr 2011)
@@ -7,6 +7,8 @@
 # * *
 # ************************************************************************** */
 #
+# /* Revised by Edward Diener (2011) */
+#
 # /* See http://www.boost.org for most recent version. */
 #
 # ifndef BOOST_PREPROCESSOR_SEQ_HPP
@@ -35,6 +37,7 @@
 # include <boost/preprocessor/seq/size.hpp>
 # include <boost/preprocessor/seq/subseq.hpp>
 # include <boost/preprocessor/seq/to_array.hpp>
+# include <boost/preprocessor/seq/to_list.hpp>
 # include <boost/preprocessor/seq/to_tuple.hpp>
 # include <boost/preprocessor/seq/transform.hpp>
 #

Modified: branches/pplib/variadics/boost/preprocessor/seq/to_list.hpp
==============================================================================
--- branches/pplib/variadics/boost/preprocessor/seq/to_list.hpp (original)
+++ branches/pplib/variadics/boost/preprocessor/seq/to_list.hpp 2011-04-01 09:24:22 EDT (Fri, 01 Apr 2011)
@@ -1,6 +1,7 @@
 # /* **************************************************************************
 # * *
 # * (C) Copyright Paul Mensonides 2011.
+# * (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)

Modified: branches/pplib/variadics/boost/preprocessor/tuple.hpp
==============================================================================
--- branches/pplib/variadics/boost/preprocessor/tuple.hpp (original)
+++ branches/pplib/variadics/boost/preprocessor/tuple.hpp 2011-04-01 09:24:22 EDT (Fri, 01 Apr 2011)
@@ -8,6 +8,7 @@
 # */
 #
 # /* Revised by Paul Mensonides (2002) */
+# /* Revised by Edward Diener (2011) */
 #
 # /* See http://www.boost.org for most recent version. */
 #
@@ -16,8 +17,11 @@
 #
 # include <boost/preprocessor/tuple/eat.hpp>
 # include <boost/preprocessor/tuple/elem.hpp>
+# include <boost/preprocessor/tuple/enum.hpp>
 # include <boost/preprocessor/tuple/rem.hpp>
 # include <boost/preprocessor/tuple/reverse.hpp>
+# include <boost/preprocessor/tuple/size.hpp>
+# include <boost/preprocessor/tuple/to_array.hpp>
 # include <boost/preprocessor/tuple/to_list.hpp>
 # include <boost/preprocessor/tuple/to_seq.hpp>
 #

Modified: branches/pplib/variadics/boost/preprocessor/tuple/detail/use_overload.hpp
==============================================================================
--- branches/pplib/variadics/boost/preprocessor/tuple/detail/use_overload.hpp (original)
+++ branches/pplib/variadics/boost/preprocessor/tuple/detail/use_overload.hpp 2011-04-01 09:24:22 EDT (Fri, 01 Apr 2011)
@@ -18,33 +18,178 @@
 #
 # include <boost/preprocessor/facilities/overload.hpp>
 #
-# /* BOOST_PP_TUPLE_DETAIL_USE_OVERLOAD */
+# /* BOOST_PP_TUPLE_DETAIL_ELEM_USE_OVERLOAD */
 #
 # if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MSVC()
-# define BOOST_PP_TUPLE_DETAIL_USE_OVERLOAD(prefix,...) \
- BOOST_PP_USE_OV_CAT(BOOST_PP_TUPLE_DETAIL_APPLY_VAR(BOOST_PP_OVERLOAD(prefix, __VA_ARGS__),(__VA_ARGS__)),BOOST_PP_EMPTY()) \
+# define BOOST_PP_TUPLE_DETAIL_ELEM_USE_OVERLOAD(prefix,...) \
+ BOOST_PP_TUPLE_DETAIL_ELEM_USE_OV_CAT(BOOST_PP_TUPLE_DETAIL_ELEM_APPLY_VAR(BOOST_PP_OVERLOAD(prefix, __VA_ARGS__),(__VA_ARGS__)),BOOST_PP_EMPTY()) \
          /**/
 #
 # else
 #
-# define BOOST_PP_TUPLE_DETAIL_USE_OVERLOAD(prefix,...) \
- BOOST_PP_TUPLE_DETAIL_APPLY_VAR(BOOST_PP_OVERLOAD(prefix, __VA_ARGS__),(__VA_ARGS__)) \
+# define BOOST_PP_TUPLE_DETAIL_ELEM_USE_OVERLOAD(prefix,...) \
+ BOOST_PP_TUPLE_DETAIL_ELEM_APPLY_VAR(BOOST_PP_OVERLOAD(prefix, __VA_ARGS__),(__VA_ARGS__)) \
          /**/
 #
 # endif
 #
-#define BOOST_PP_TUPLE_DETAIL_APPLY_VAR_I(macro, args) \
+#define BOOST_PP_TUPLE_DETAIL_ELEM_APPLY_VAR_I(macro, args) \
   macro args \
 /**/
 #
-#define BOOST_PP_TUPLE_DETAIL_APPLY_VAR(macro, args) \
- BOOST_PP_TUPLE_DETAIL_APPLY_VAR_I(macro, args) \
+#define BOOST_PP_TUPLE_DETAIL_ELEM_APPLY_VAR(macro, args) \
+ BOOST_PP_TUPLE_DETAIL_ELEM_APPLY_VAR_I(macro, args) \
 /**/
 #
 # if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MSVC()
-# define BOOST_PP_USE_OV_CAT(a, b) BOOST_PP_USE_OV_CAT_I(a, b)
-# define BOOST_PP_USE_OV_CAT_I(a, b) BOOST_PP_USE_OV_CAT_II(a ## b)
-# define BOOST_PP_USE_OV_CAT_II(res) res
+# define BOOST_PP_TUPLE_DETAIL_ELEM_USE_OV_CAT(a, b) BOOST_PP_TUPLE_DETAIL_ELEM_USE_OV_CAT_I(a, b)
+# define BOOST_PP_TUPLE_DETAIL_ELEM_USE_OV_CAT_I(a, b) BOOST_PP_TUPLE_DETAIL_ELEM_USE_OV_CAT_II(a ## b)
+# define BOOST_PP_TUPLE_DETAIL_ELEM_USE_OV_CAT_II(res) res
+# endif
+#
+# /* BOOST_PP_TUPLE_DETAIL_REM_USE_OVERLOAD */
+#
+# if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MSVC()
+# define BOOST_PP_TUPLE_DETAIL_REM_USE_OVERLOAD(prefix,...) \
+ BOOST_PP_TUPLE_DETAIL_REM_USE_OV_CAT(BOOST_PP_TUPLE_DETAIL_REM_APPLY_VAR(BOOST_PP_OVERLOAD(prefix, __VA_ARGS__),(__VA_ARGS__)),BOOST_PP_EMPTY()) \
+ /**/
+#
+# else
+#
+# define BOOST_PP_TUPLE_DETAIL_REM_USE_OVERLOAD(prefix,...) \
+ BOOST_PP_TUPLE_DETAIL_REM_APPLY_VAR(BOOST_PP_OVERLOAD(prefix, __VA_ARGS__),(__VA_ARGS__)) \
+ /**/
+#
+# endif
+#
+#define BOOST_PP_TUPLE_DETAIL_REM_APPLY_VAR_I(macro, args) \
+ macro args \
+/**/
+#
+#define BOOST_PP_TUPLE_DETAIL_REM_APPLY_VAR(macro, args) \
+ BOOST_PP_TUPLE_DETAIL_REM_APPLY_VAR_I(macro, args) \
+/**/
+#
+# if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MSVC()
+# define BOOST_PP_TUPLE_DETAIL_REM_USE_OV_CAT(a, b) BOOST_PP_TUPLE_DETAIL_REM_USE_OV_CAT_I(a, b)
+# define BOOST_PP_TUPLE_DETAIL_REM_USE_OV_CAT_I(a, b) BOOST_PP_TUPLE_DETAIL_REM_USE_OV_CAT_II(a ## b)
+# define BOOST_PP_TUPLE_DETAIL_REM_USE_OV_CAT_II(res) res
+# endif
+#
+# /* BOOST_PP_TUPLE_DETAIL_REVERSE_USE_OVERLOAD */
+#
+# if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MSVC()
+# define BOOST_PP_TUPLE_DETAIL_REVERSE_USE_OVERLOAD(prefix,...) \
+ BOOST_PP_TUPLE_DETAIL_REVERSE_USE_OV_CAT(BOOST_PP_TUPLE_DETAIL_REVERSE_APPLY_VAR(BOOST_PP_OVERLOAD(prefix, __VA_ARGS__),(__VA_ARGS__)),BOOST_PP_EMPTY()) \
+ /**/
+#
+# else
+#
+# define BOOST_PP_TUPLE_DETAIL_REVERSE_USE_OVERLOAD(prefix,...) \
+ BOOST_PP_TUPLE_DETAIL_REVERSE_APPLY_VAR(BOOST_PP_OVERLOAD(prefix, __VA_ARGS__),(__VA_ARGS__)) \
+ /**/
+#
+# endif
+#
+#define BOOST_PP_TUPLE_DETAIL_REVERSE_APPLY_VAR_I(macro, args) \
+ macro args \
+/**/
+#
+#define BOOST_PP_TUPLE_DETAIL_REVERSE_APPLY_VAR(macro, args) \
+ BOOST_PP_TUPLE_DETAIL_REVERSE_APPLY_VAR_I(macro, args) \
+/**/
+#
+# if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MSVC()
+# define BOOST_PP_TUPLE_DETAIL_REVERSE_USE_OV_CAT(a, b) BOOST_PP_TUPLE_DETAIL_REVERSE_USE_OV_CAT_I(a, b)
+# define BOOST_PP_TUPLE_DETAIL_REVERSE_USE_OV_CAT_I(a, b) BOOST_PP_TUPLE_DETAIL_REVERSE_USE_OV_CAT_II(a ## b)
+# define BOOST_PP_TUPLE_DETAIL_REVERSE_USE_OV_CAT_II(res) res
+# endif
+#
+# /* BOOST_PP_TUPLE_DETAIL_TO_ARRAY_USE_OVERLOAD */
+#
+# if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MSVC()
+# define BOOST_PP_TUPLE_DETAIL_TO_ARRAY_USE_OVERLOAD(prefix,...) \
+ BOOST_PP_TUPLE_DETAIL_TO_ARRAY_USE_OV_CAT(BOOST_PP_TUPLE_DETAIL_TO_ARRAY_APPLY_VAR(BOOST_PP_OVERLOAD(prefix, __VA_ARGS__),(__VA_ARGS__)),BOOST_PP_EMPTY()) \
+ /**/
+#
+# else
+#
+# define BOOST_PP_TUPLE_DETAIL_TO_ARRAY_USE_OVERLOAD(prefix,...) \
+ BOOST_PP_TUPLE_DETAIL_TO_ARRAY_APPLY_VAR(BOOST_PP_OVERLOAD(prefix, __VA_ARGS__),(__VA_ARGS__)) \
+ /**/
+#
+# endif
+#
+#define BOOST_PP_TUPLE_DETAIL_TO_ARRAY_APPLY_VAR_I(macro, args) \
+ macro args \
+/**/
+#
+#define BOOST_PP_TUPLE_DETAIL_TO_ARRAY_APPLY_VAR(macro, args) \
+ BOOST_PP_TUPLE_DETAIL_TO_ARRAY_APPLY_VAR_I(macro, args) \
+/**/
+#
+# if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MSVC()
+# define BOOST_PP_TUPLE_DETAIL_TO_ARRAY_USE_OV_CAT(a, b) BOOST_PP_TUPLE_DETAIL_TO_ARRAY_USE_OV_CAT_I(a, b)
+# define BOOST_PP_TUPLE_DETAIL_TO_ARRAY_USE_OV_CAT_I(a, b) BOOST_PP_TUPLE_DETAIL_TO_ARRAY_USE_OV_CAT_II(a ## b)
+# define BOOST_PP_TUPLE_DETAIL_TO_ARRAY_USE_OV_CAT_II(res) res
+# endif
+#
+# /* BOOST_PP_TUPLE_DETAIL_TO_LIST_USE_OVERLOAD */
+#
+# if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MSVC()
+# define BOOST_PP_TUPLE_DETAIL_TO_LIST_USE_OVERLOAD(prefix,...) \
+ BOOST_PP_TUPLE_DETAIL_TO_LIST_USE_OV_CAT(BOOST_PP_TUPLE_DETAIL_TO_LIST_APPLY_VAR(BOOST_PP_OVERLOAD(prefix, __VA_ARGS__),(__VA_ARGS__)),BOOST_PP_EMPTY()) \
+ /**/
+#
+# else
+#
+# define BOOST_PP_TUPLE_DETAIL_TO_LIST_USE_OVERLOAD(prefix,...) \
+ BOOST_PP_TUPLE_DETAIL_TO_LIST_APPLY_VAR(BOOST_PP_OVERLOAD(prefix, __VA_ARGS__),(__VA_ARGS__)) \
+ /**/
+#
+# endif
+#
+#define BOOST_PP_TUPLE_DETAIL_TO_LIST_APPLY_VAR_I(macro, args) \
+ macro args \
+/**/
+#
+#define BOOST_PP_TUPLE_DETAIL_TO_LIST_APPLY_VAR(macro, args) \
+ BOOST_PP_TUPLE_DETAIL_TO_LIST_APPLY_VAR_I(macro, args) \
+/**/
+#
+# if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MSVC()
+# define BOOST_PP_TUPLE_DETAIL_TO_LIST_USE_OV_CAT(a, b) BOOST_PP_TUPLE_DETAIL_TO_LIST_USE_OV_CAT_I(a, b)
+# define BOOST_PP_TUPLE_DETAIL_TO_LIST_USE_OV_CAT_I(a, b) BOOST_PP_TUPLE_DETAIL_TO_LIST_USE_OV_CAT_II(a ## b)
+# define BOOST_PP_TUPLE_DETAIL_TO_LIST_USE_OV_CAT_II(res) res
+# endif
+#
+# /* BOOST_PP_TUPLE_DETAIL_TO_SEQ_USE_OVERLOAD */
+#
+# if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MSVC()
+# define BOOST_PP_TUPLE_DETAIL_TO_SEQ_USE_OVERLOAD(prefix,...) \
+ BOOST_PP_TUPLE_DETAIL_TO_SEQ_USE_OV_CAT(BOOST_PP_TUPLE_DETAIL_TO_SEQ_APPLY_VAR(BOOST_PP_OVERLOAD(prefix, __VA_ARGS__),(__VA_ARGS__)),BOOST_PP_EMPTY()) \
+ /**/
+#
+# else
+#
+# define BOOST_PP_TUPLE_DETAIL_TO_SEQ_USE_OVERLOAD(prefix,...) \
+ BOOST_PP_TUPLE_DETAIL_TO_SEQ_APPLY_VAR(BOOST_PP_OVERLOAD(prefix, __VA_ARGS__),(__VA_ARGS__)) \
+ /**/
+#
+# endif
+#
+#define BOOST_PP_TUPLE_DETAIL_TO_SEQ_APPLY_VAR_I(macro, args) \
+ macro args \
+/**/
+#
+#define BOOST_PP_TUPLE_DETAIL_TO_SEQ_APPLY_VAR(macro, args) \
+ BOOST_PP_TUPLE_DETAIL_TO_SEQ_APPLY_VAR_I(macro, args) \
+/**/
+#
+# if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MSVC()
+# define BOOST_PP_TUPLE_DETAIL_TO_SEQ_USE_OV_CAT(a, b) BOOST_PP_TUPLE_DETAIL_TO_SEQ_USE_OV_CAT_I(a, b)
+# define BOOST_PP_TUPLE_DETAIL_TO_SEQ_USE_OV_CAT_I(a, b) BOOST_PP_TUPLE_DETAIL_TO_SEQ_USE_OV_CAT_II(a ## b)
+# define BOOST_PP_TUPLE_DETAIL_TO_SEQ_USE_OV_CAT_II(res) res
 # endif
 #
 # endif // BOOST_PP_VARIADICS

Modified: branches/pplib/variadics/boost/preprocessor/tuple/eat.hpp
==============================================================================
--- branches/pplib/variadics/boost/preprocessor/tuple/eat.hpp (original)
+++ branches/pplib/variadics/boost/preprocessor/tuple/eat.hpp 2011-04-01 09:24:22 EDT (Fri, 01 Apr 2011)
@@ -8,6 +8,7 @@
 # */
 #
 # /* Revised by Paul Mensonides (2002) */
+# /* Revised by Edward Diener (2011) */
 #
 # /* See http://www.boost.org for most recent version. */
 #
@@ -17,7 +18,7 @@
 # include <boost/preprocessor/config/config.hpp>
 # include <boost/preprocessor/config/variadics.hpp>
 #
-# if BOOST_PP_VARIADICS && !defined(BOOST_PP_TEST_NO_TUPLE_EAT)
+# if BOOST_PP_VARIADICS
 #
 # /* BOOST_PP_TUPLE_EAT */
 #

Modified: branches/pplib/variadics/boost/preprocessor/tuple/elem.hpp
==============================================================================
--- branches/pplib/variadics/boost/preprocessor/tuple/elem.hpp (original)
+++ branches/pplib/variadics/boost/preprocessor/tuple/elem.hpp 2011-04-01 09:24:22 EDT (Fri, 01 Apr 2011)
@@ -8,6 +8,7 @@
 # */
 #
 # /* Revised by Paul Mensonides (2002) */
+# /* Revised by Edward Diener (2011) */
 #
 # /* See http://www.boost.org for most recent version. */
 #
@@ -17,7 +18,7 @@
 # include <boost/preprocessor/config/config.hpp>
 # include <boost/preprocessor/config/variadics.hpp>
 #
-# if BOOST_PP_VARIADICS && !defined(BOOST_PP_TEST_NO_TUPLE_ELEM)
+# if BOOST_PP_VARIADICS
 #
 # include <boost/preprocessor/tuple/size.hpp>
 # include <boost/preprocessor/tuple/detail/use_overload.hpp>
@@ -25,7 +26,7 @@
 # /* BOOST_PP_TUPLE_ELEM */
 #
 # define BOOST_PP_TUPLE_ELEM(...) \
- BOOST_PP_TUPLE_DETAIL_USE_OVERLOAD(BOOST_PP_TUPLE_DETAIL_ELEM_,__VA_ARGS__) \
+ BOOST_PP_TUPLE_DETAIL_ELEM_USE_OVERLOAD(BOOST_PP_TUPLE_DETAIL_ELEM_,__VA_ARGS__) \
          /**/
 # define BOOST_PP_TUPLE_DETAIL_ELEM_2(i, tuple) \
          BOOST_PP_TUPLE_DETAIL_ELEM_3(BOOST_PP_TUPLE_SIZE(tuple),i,tuple) \

Modified: branches/pplib/variadics/boost/preprocessor/tuple/rem.hpp
==============================================================================
--- branches/pplib/variadics/boost/preprocessor/tuple/rem.hpp (original)
+++ branches/pplib/variadics/boost/preprocessor/tuple/rem.hpp 2011-04-01 09:24:22 EDT (Fri, 01 Apr 2011)
@@ -7,6 +7,8 @@
 # * *
 # ************************************************************************** */
 #
+# /* Revised by Edward Diener (2011) */
+#
 # /* See http://www.boost.org for most recent version. */
 #
 # ifndef BOOST_PREPROCESSOR_TUPLE_REM_HPP
@@ -15,7 +17,7 @@
 # include <boost/preprocessor/config/config.hpp>
 # include <boost/preprocessor/config/variadics.hpp>
 #
-# if BOOST_PP_VARIADICS && !defined(BOOST_PP_TEST_NO_TUPLE_REM)
+# if BOOST_PP_VARIADICS
 #
 # include <boost/preprocessor/tuple/detail/use_overload.hpp>
 #
@@ -26,8 +28,9 @@
 #
 # /* BOOST_PP_TUPLE_REM_CTOR */
 #
+#
 # define BOOST_PP_TUPLE_REM_CTOR(...) \
- BOOST_PP_TUPLE_DETAIL_USE_OVERLOAD(BOOST_PP_TUPLE_DETAIL_REM_CTOR_, __VA_ARGS__) \
+ BOOST_PP_TUPLE_DETAIL_REM_USE_OVERLOAD(BOOST_PP_TUPLE_DETAIL_REM_CTOR_, __VA_ARGS__) \
          /**/
 # define BOOST_PP_TUPLE_DETAIL_REM_CTOR_1(tuple) BOOST_PP_DETAIL_TUPLE_REM tuple
 # define BOOST_PP_TUPLE_DETAIL_REM_CTOR_2(size, tuple) BOOST_PP_TUPLE_DETAIL_REM_CTOR_1(tuple)

Modified: branches/pplib/variadics/boost/preprocessor/tuple/reverse.hpp
==============================================================================
--- branches/pplib/variadics/boost/preprocessor/tuple/reverse.hpp (original)
+++ branches/pplib/variadics/boost/preprocessor/tuple/reverse.hpp 2011-04-01 09:24:22 EDT (Fri, 01 Apr 2011)
@@ -8,6 +8,7 @@
 # */
 #
 # /* Revised by Paul Mensonides (2002) */
+# /* Revised by Edward Diener (2011) */
 #
 # /* See http://www.boost.org for most recent version. */
 #
@@ -17,7 +18,7 @@
 # include <boost/preprocessor/config/config.hpp>
 # include <boost/preprocessor/config/variadics.hpp>
 #
-# if BOOST_PP_VARIADICS && !defined(BOOST_PP_TEST_NO_TUPLE_REVERSE)
+# if BOOST_PP_VARIADICS
 #
 # include <boost/preprocessor/tuple/size.hpp>
 # include <boost/preprocessor/tuple/detail/use_overload.hpp>
@@ -25,7 +26,7 @@
 # /* BOOST_PP_TUPLE_REVERSE */
 #
 # define BOOST_PP_TUPLE_REVERSE(...) \
- BOOST_PP_TUPLE_DETAIL_USE_OVERLOAD(BOOST_PP_TUPLE_DETAIL_REVERSE_, __VA_ARGS__) \
+ BOOST_PP_TUPLE_DETAIL_REVERSE_USE_OVERLOAD(BOOST_PP_TUPLE_DETAIL_REVERSE_, __VA_ARGS__) \
          /**/
 # define BOOST_PP_TUPLE_DETAIL_REVERSE_1(tuple) \
          BOOST_PP_TUPLE_DETAIL_REVERSE_2(BOOST_PP_TUPLE_SIZE(tuple),tuple) \

Modified: branches/pplib/variadics/boost/preprocessor/tuple/size.hpp
==============================================================================
--- branches/pplib/variadics/boost/preprocessor/tuple/size.hpp (original)
+++ branches/pplib/variadics/boost/preprocessor/tuple/size.hpp 2011-04-01 09:24:22 EDT (Fri, 01 Apr 2011)
@@ -16,13 +16,13 @@
 #
 #if BOOST_PP_VARIADICS
 #
-# include <boost/preprocessor/tuple/enum.hpp>
+# include <boost/preprocessor/tuple/rem.hpp>
 # include <boost/preprocessor/variadic/size.hpp>
 #
 # /* BOOST_PP_TUPLE_SIZE */
 #
 #define BOOST_PP_TUPLE_SIZE(tuple) BOOST_PP_TUPLE_SIZE_DETAIL(tuple)
-#define BOOST_PP_TUPLE_SIZE_DETAIL(tuple) BOOST_PP_VARIADIC_SIZE(BOOST_PP_TUPLE_ENUM(tuple))
+#define BOOST_PP_TUPLE_SIZE_DETAIL(tuple) BOOST_PP_VARIADIC_SIZE(BOOST_PP_TUPLE_DETAIL_REM_CTOR_1(tuple))
 #
 #endif // BOOST_PP_VARIADICS
 #endif // BOOST_PREPROCESSOR_TUPLE_SIZE_HPP

Modified: branches/pplib/variadics/boost/preprocessor/tuple/to_array.hpp
==============================================================================
--- branches/pplib/variadics/boost/preprocessor/tuple/to_array.hpp (original)
+++ branches/pplib/variadics/boost/preprocessor/tuple/to_array.hpp 2011-04-01 09:24:22 EDT (Fri, 01 Apr 2011)
@@ -22,7 +22,7 @@
 # /* BOOST_PP_TUPLE_TO_ARRAY */
 #
 # define BOOST_PP_TUPLE_TO_ARRAY(...) \
- BOOST_PP_TUPLE_DETAIL_USE_OVERLOAD(BOOST_PP_TUPLE_DETAIL_TO_ARRAY_, __VA_ARGS__) \
+ BOOST_PP_TUPLE_DETAIL_TO_ARRAY_USE_OVERLOAD(BOOST_PP_TUPLE_DETAIL_TO_ARRAY_, __VA_ARGS__) \
   /**/
 # define BOOST_PP_TUPLE_DETAIL_TO_ARRAY_1(tuple) \
   BOOST_PP_TUPLE_DETAIL_TO_ARRAY_2(BOOST_PP_TUPLE_SIZE(tuple),tuple) \

Modified: branches/pplib/variadics/boost/preprocessor/tuple/to_list.hpp
==============================================================================
--- branches/pplib/variadics/boost/preprocessor/tuple/to_list.hpp (original)
+++ branches/pplib/variadics/boost/preprocessor/tuple/to_list.hpp 2011-04-01 09:24:22 EDT (Fri, 01 Apr 2011)
@@ -8,6 +8,7 @@
 # */
 #
 # /* Revised by Paul Mensonides (2002) */
+# /* Revised by Edward Diener (2011) */
 #
 # /* See http://www.boost.org for most recent version. */
 #
@@ -17,7 +18,7 @@
 # include <boost/preprocessor/config/config.hpp>
 # include <boost/preprocessor/config/variadics.hpp>
 #
-# if BOOST_PP_VARIADICS && !defined(BOOST_PP_TEST_NO_TUPLE_TO_LIST)
+# if BOOST_PP_VARIADICS
 #
 # include <boost/preprocessor/tuple/size.hpp>
 # include <boost/preprocessor/tuple/detail/use_overload.hpp>
@@ -25,7 +26,7 @@
 # /* BOOST_PP_TUPLE_TO_LIST */
 #
 # define BOOST_PP_TUPLE_TO_LIST(...) \
- BOOST_PP_TUPLE_DETAIL_USE_OVERLOAD(BOOST_PP_TUPLE_DETAIL_TO_LIST_, __VA_ARGS__) \
+ BOOST_PP_TUPLE_DETAIL_TO_LIST_USE_OVERLOAD(BOOST_PP_TUPLE_DETAIL_TO_LIST_, __VA_ARGS__) \
   /**/
 # define BOOST_PP_TUPLE_DETAIL_TO_LIST_1(tuple) \
   BOOST_PP_TUPLE_DETAIL_TO_LIST_2(BOOST_PP_TUPLE_SIZE(tuple),tuple) \

Modified: branches/pplib/variadics/boost/preprocessor/tuple/to_seq.hpp
==============================================================================
--- branches/pplib/variadics/boost/preprocessor/tuple/to_seq.hpp (original)
+++ branches/pplib/variadics/boost/preprocessor/tuple/to_seq.hpp 2011-04-01 09:24:22 EDT (Fri, 01 Apr 2011)
@@ -7,6 +7,8 @@
 # * *
 # ************************************************************************** */
 #
+# /* Revised by Edward Diener (2011) */
+#
 # /* See http://www.boost.org for most recent version. */
 #
 # ifndef BOOST_PREPROCESSOR_TUPLE_TO_SEQ_HPP
@@ -15,7 +17,7 @@
 # include <boost/preprocessor/config/config.hpp>
 # include <boost/preprocessor/config/variadics.hpp>
 #
-# if BOOST_PP_VARIADICS && !defined(BOOST_PP_TEST_NO_TUPLE_TO_SEQ)
+# if BOOST_PP_VARIADICS
 #
 # include <boost/preprocessor/tuple/size.hpp>
 # include <boost/preprocessor/tuple/detail/use_overload.hpp>
@@ -23,7 +25,7 @@
 # /* BOOST_PP_TUPLE_TO_SEQ */
 #
 # define BOOST_PP_TUPLE_TO_SEQ(...) \
- BOOST_PP_TUPLE_DETAIL_USE_OVERLOAD(BOOST_PP_TUPLE_DETAIL_TO_SEQ_, __VA_ARGS__) \
+ BOOST_PP_TUPLE_DETAIL_TO_SEQ_USE_OVERLOAD(BOOST_PP_TUPLE_DETAIL_TO_SEQ_, __VA_ARGS__) \
   /**/
 # define BOOST_PP_TUPLE_DETAIL_TO_SEQ_1(tuple) \
   BOOST_PP_TUPLE_DETAIL_TO_SEQ_2(BOOST_PP_TUPLE_SIZE(tuple),tuple) \

Added: branches/pplib/variadics/boost/preprocessor/variadic.hpp
==============================================================================
--- (empty file)
+++ branches/pplib/variadics/boost/preprocessor/variadic.hpp 2011-04-01 09:24:22 EDT (Fri, 01 Apr 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. */
+#
+# ifndef BOOST_PREPROCESSOR_VARIADIC_HPP
+# define BOOST_PREPROCESSOR_VARIADIC_HPP
+#
+# include <boost/preprocessor/variadic/elem.hpp>
+# include <boost/preprocessor/variadic/size.hpp>
+# include <boost/preprocessor/variadic/to_array.hpp>
+# include <boost/preprocessor/variadic/to_list.hpp>
+# include <boost/preprocessor/variadic/to_seq.hpp>
+# include <boost/preprocessor/variadic/to_tuple.hpp>
+#
+# 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