|
Boost : |
From: Paul Mensonides (pmenso57_at_[hidden])
Date: 2002-06-16 16:02:32
Before I only tested the implementation Vesa sent me via email. I have now
tested the
implementation on the CVS and have corrected it. Here is what you (or Vesa)
needs to do as I don't have CVS access:
// 'expand.hpp' - add a macro that pushes together its arguments with a delay
#define BOOST_PP_PUSH_EXPAND(a, b) BOOST_PP_DETAIL_EXPAND(a b)
// 'elem.hpp' - redefine TUPLE_ELEM as follows...
#define BOOST_PP_TUPLE_ELEM(SIZE_OF_TUPLE, INDEX, TUPLE) \
BOOST_PP_PUSH_EXPAND( \
BOOST_PP_DETAIL_CAT2(BOOST_PP_TUPLE16_ELEM, INDEX), \
BOOST_PP_DETAIL_CAT2(BOOST_PP_TUPLE_ELEM_EX, SIZE_OF_TUPLE) TUPLE \
)
That should fix the problem.
You have to give the preprocessor time to think of the result of
BOOST_PP_TUPLE_ELEM_EX.. as a argument list rather than an 'item'.
But the above fixes the problem on both VC++ and Comeau C++.
Paul Mensonides
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk