Subject: Re: [boost] [preprocessor] Warning: Incoming
From: Edward Diener (eldiener_at_[hidden])
Date: 2012-01-14 08:40:31


On 1/14/2012 5:53 AM, Lorenzo Caminiti wrote:
> On Sun, Jun 26, 2011 at 10:57 AM, Lorenzo Caminiti
> <lorcaminiti_at_[hidden]> wrote:
>> I use Boost.Preprocessor (PP_TUPLE_, etc) pervasively in the
>> implementation of a lot of macros in my projects. I also occasionally
>> use Edward's VMD library. I will haply test the Boost.Preprocessor
>> changes against my code.
>
> I've been using Boost.Preprocessor variadics in Boost.ScopeExit,
> Boost.Closure, and Boost.Contract. I have not seen any issue so far.
>
> I have a couple of comments:

I am replying about what is on the trunk. I have tried to get Paul
Mensonides to move the trunk code to release, but he seems to be busy
and has not been able to do so as yet. I am responsible for the
documentation for the variadic macro support on the trunk.

>
> 1) Are the PP_VARIADIC macros documented?

Yes. Look under the variadic header in the docs and in the reference
starting with VARIADIC_.

>
> 2) There are some macros like PP_REM and PP_EAT that are defined
> inside tuple/... even if they do not have the PP_TUPLE_ prefix. They
> are also not documented. Are these part of the public API? If find
> these macros useful, I'd move them in facilities/ and document them...
> (BTW, BOOST_PP_IS_EMPTY is not documented either.)

I am for documenting BOOST_PP_IS_EMPTY, and for providing a better
version based almost completely on Paul's improvement using variadic
macros. He may feel different.

As far as the internal PP_REM and PP_EAT Paul did not want them to be
documented as yet. Hopefully he will respond with his further plans
about them if any.