New config macro : BOOST_CXX0X_REFERENCE_COLLAPSING

Recently there was some discussion about adding config support for C++0x features. The attached test would pass for compilers implementing Core Issue 106 - reference collapsing. There are a couple of associated issues: Is this our preferred naming convention? Does the config generating script need updating to support it? Which compilers already implement the feature? Can any existing libraries put the detected feature to use? For reference, here is the source for the test case extracted from the attached file: template < typename T > struct test_holder { typedef T & type; }; typedef test_holder< int & >::type wrap_test; This will be a compile time failure on platforms that do not support the feature, but it must be actively enabled on a per-compiler basis in the compiler config files. -- AlisdairM

AlisdairM wrote:
Recently there was some discussion about adding config support for C++0x features.
The attached test would pass for compilers implementing Core Issue 106 - reference collapsing.
There are a couple of associated issues:
Is this our preferred naming convention?
Personally I'm easy on this, Doug has already started some BOOST_CXX0X macros so I guess we should continue the trend. Which reminds me, we still need test cases for Doug's new macros!
Does the config generating script need updating to support it?
Either we need to update the management scripts, or call the filename boost_has_XXXX irrespective of the actual macro name and it will do the right thing. If this is going to be a trend, might be better to update the scripts. John.
participants (2)
-
AlisdairM
-
John Maddock