
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.