Boost logo

Boost :

From: Paul Mensonides (pmenso57_at_[hidden])
Date: 2005-08-24 15:31:56


> -----Original Message-----
> From: boost-bounces_at_[hidden]
> [mailto:boost-bounces_at_[hidden]] On Behalf Of Sergey Skorniakov

> #define AAA const char bbb[] = BOOST_PP_STRINGIZE(prefix
> BOOST_PP_COMMA()
> postfix)
>
> AAA;

It isn't broken. That isn't supposed to work (and there is no way to make it
work without variadic macros). The best you can do is separate the strings:

... = BOOST_PP_STRINGIZE(prefix) ", " BOOST_PP_STRINGIZE(postfix)

> Preprocessing of such a code is accompanied by warning C4002:
> too many actual parameters for macro 'BOOST_PP_STRINGIZE_I'.
>
> With 1.32.0 library version variable bbb value was "prefix,
> postfix". With new version it is just "prefix".

It only worked because VC's preprocessor is so horribly broken.

Regards,
Paul Mensonides


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk