Boost logo

Boost :

Subject: Re: [boost] [config] std::unique_ptr, std::ref detection?
From: John Maddock (boost.regex_at_[hidden])
Date: 2012-03-02 04:43:58


>While looking at this, I noticed that we have two macros:
>BOOST_NO_0X_HDR_INITIALIZER_LIST
>and BOOST_NO_INITIALIZER_LISTS
>
>There's an old thread from 2009 where the consensus was that
>"BOOST_NO_INITIALIZER_LISTS" should be removed in favor of the 0X one.

OK.

>The only library that is using BOOST_NO_INITIALIZER_LISTS is Boost.Random
>(and some tests in Boost.Config).
>
>I think I'll make that change first; unless someone complains.

Suggest you "undocument" BOOST_NO_INITIALIZER_LISTS, remove the test in
Boost.Config plus any reference to it in the config/compiler/*.hpp headers
but leave it conditionally defined in boost/config/suffix.hpp as:

#if defined(BOOST_NO_0X_HDR_INITIALIZER_LIST) &&
!defined(BOOST_NO_INITIALIZER_LISTS)
#define BOOST_NO_INITIALIZER_LISTS
#endif

Then any legacy code out there that's using it won't be broken.

Same procedure would apply to renaming the *_C0X_* macros: make sure the old
deprecated ones are conditionally set in suffix.hpp so that legacy code
isn't broken - it also means we can merge Boost.Config to release without
worrying about the Boost libraries that depend upon it.

I guess if we were really tidying up, then a nicely commented section in
suffix.hpp for deprecated macros would be nice (there are a few in there
already - just don't ask me which ones!).

Cheers, John.


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