Boost logo

Boost :

Subject: Re: [boost] MSVC warnings for BOOST_PP_IS_EMPTY in Boost.Phoenix
From: Damien Buhl (damien.buhl_at_[hidden])
Date: 2015-03-17 10:28:02

On 17/03/2015 10:56, Andrey Semashev wrote:
> ...and lambda arguments.

Thanks for completeness :).

> Well, you're not actually using auto as a language keyword. IIUC the
> implementation will be the same as the current one, only replacing the long
> Fusion macro-like token with auto. The appealing point for auto is that as far
> as I can tell, type deduction rules for the adapted members should be very
> similar to those of auto.
> Actually, my suggestion of auto is only partly motivated by semantics
> similarity. What I also wanted is to have a shorter keyword instead of
> BOOST_FUSION_ADAPT_AUTO which is way too long IMHO, and which I'll certainly
> forget. I'm ok if you feel that auto does not suit well, but I would still
> like a shorter alternative. The problem is that it has to be either
> sufficiently qualified in order not to clash with user types or macros (in
> which case we're back to BOOST_FUSION_ADAPT_AUTO) or be a language keyword. I
> could also suggest the "_" placeholder, which is less informative but short.

I agree with you, and I'm trying to reduce to AUTO at least, if I get
courageous enough I'll try to put lowercase auto, but currently
support is active.

I have added this only for support on older preprocessors. Most have
BOOST_PP_VARIADICS, and if it's a question of being short or
remembering, then you don't need to remember anything else than you can
completely omit the type or mix it with type declaration. As such :

        (int, name),
        (std::string, location)
        (int, salary),

But usually one has no reason to repeat the type, it's mainly for
backward compatibility and possibly for people using implicit-conversion
to some other common type that I added this. So normally today, one
would write :


>> Possibly decltype would make more sense ? Or even typeof ?
> Both these require an argument, which I don't think makes sense in this
> context. Using these keywords without an argument makes even less sense to me.

yes it's even worse when I think more after it.

I'll send you the link to the pull-request when I'll be done with a
proposal in this sense. Thanks to your input I'm getting more confident
in using auto as keyword for the fallback. :p.

Boost list run by bdawes at, gregod at, cpdaniel at, john at