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