Subject: Re: [boost] [config] Add BOOST_NO_RANGE_BASED_FOR macro?
From: Marshall Clow (mclow.lists_at_[hidden])
Date: 2012-07-09 20:21:25
On Jul 9, 2012, at 5:15 PM, Jeffrey Lee Hellrung, Jr. wrote:
> On Mon, Jul 9, 2012 at 4:57 PM, Marshall Clow <mclow.lists_at_[hidden]> wrote:
>> Here's a patch vs. the trunk which renames all the macros in the table
>> "Macros that describe C++11 features not supported" (with the notable
>> exception of BOOST_NO_LONG_LONG) to have consistent names.
>> For example:
>> BOOST_NO_VARIADIC_MACROS --> BOOST_NO_CXX11_VARIADIC_MACROS
>> All the old names are then #defined to be the same as the new names;
>> All the code and tests in config has been updated to use the new names.
>> All the old names have been put into the "Boost Deprecated Macros" table.
>> The goal here is no changes to client code (including code in boost
>> outside of the config library).
>> This seems to work fine on my system (Mac with gcc and clang)
>> Now Beman can define "BOOST_NO_CXX11_RANGE_BASED_FOR" and it will match
>> the style with other macros.
> Why, again, are we preferring inserting CXX11 versus not? I.e., why is
> BOOST_NO_CXX11_RVALUE_REFERENCES better than BOOST_NO_RVALUE_REFERENCES?
Because when the C++ committee puts out a new standard, and changes how rvalue references work, we can then define a new flag BOOST_NO_CXX17_RVALUE_REFERENCES, and it will be easy to explain to everyone what the differences are.
Marshall Clow Idio Software <mailto:mclow.lists_at_[hidden]>
A.D. 1517: Martin Luther nails his 95 Theses to the church door and is promptly moderated down to (-1, Flamebait).
-- Yu Suzuki