
On 08/24/11 16:34, Edward Diener wrote: [snip]
This results in the errors reported here:
http://article.gmane.org/gmane.comp.lib.boost.devel/222795
when that line is changed to:
# define BOOST_PP_CHECK_1(chk) BOOST_PP_CHECK_2(chk,_)
the reported error goes away; however, several other errors occur about too many instead of too few arguments passed to BOOST_PP_CHECK_2.
Is this a BOOST_PP bug? If not; how can the errors reported in:
http://article.gmane.org/gmane.comp.lib.boost.devel/222795
be avoided?
I believe it is allowable because of placeholder expressions, but this may have been because of C99, whereas a preprocessor that does not support C99 may not work.
BTW, nothing has changed with BOOST_PP_CHECK with Boost 1.47, as the code has appeared the way it is for a long time.
What compiler are you using ? Is there a C99 or a C++0x mode you can turn on in the command line somehow ?
Here's the compile command and part of output: /home/evansl/download/gcc/4.6.0-release/install/bin/g++ -c -Wall -ftemplate-depth-300 -O0 -fpermissive -I. -I/home/evansl/prog_dev/boost-svn/ro/boost_1_47_0 curryable.cpp In file included from /home/evansl/prog_dev/boost-svn/ro/boost_1_47_0/boost/preprocessor/iteration/detail/iter/forward2.hpp:50:0, from ./curryable.hpp:157, from /home/evansl/prog_dev/boost-svn/ro/boost_1_47_0/boost/preprocessor/iteration/detail/iter/forward1.hpp:47, from curryable.hpp:113, from curryable.cpp:1: ./curryable.hpp:117:1: error: macro "BOOST_PP_CHECK_2" requires 2 arguments, but only 1 given ./curryable.hpp:117:1: error: macro "BOOST_PP_CHECK_2" requires 2 arguments, but only 1 given I don't see anything on the above command line that indicates a c99 or c++0x mode, except maybe the -fpermissive. Thanks for the help. -regards, Larry