Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r49260 - trunk/boost/mpl
From: agurtovoy_at_[hidden]
Date: 2008-10-10 17:59:29


Author: agurtovoy
Date: 2008-10-10 17:59:29 EDT (Fri, 10 Oct 2008)
New Revision: 49260
URL: http://svn.boost.org/trac/boost/changeset/49260

Log:
has_xxx: Adjust MSVC 7.1/8.0 workaround (ticket #1317)
Text files modified:
   trunk/boost/mpl/has_xxx.hpp | 12 +++++++-----
   1 files changed, 7 insertions(+), 5 deletions(-)

Modified: trunk/boost/mpl/has_xxx.hpp
==============================================================================
--- trunk/boost/mpl/has_xxx.hpp (original)
+++ trunk/boost/mpl/has_xxx.hpp 2008-10-10 17:59:29 EDT (Fri, 10 Oct 2008)
@@ -157,11 +157,13 @@
 // applied to partial specialization to fix some apparently random failures
 // (thanks to Daniel Wallin for researching this!)
 
-namespace boost { namespace mpl { namespace aux {
-template< typename T > struct msvc71_sfinae_helper { typedef void type; };
-}}}
-
 # define BOOST_MPL_HAS_XXX_TRAIT_NAMED_DEF(trait, name, default_) \
+template< typename T > \
+struct BOOST_PP_CAT(trait, _msvc_sfinae_helper) \
+{ \
+ typedef void type; \
+};\
+\
 template< typename T, typename U = void > \
 struct BOOST_PP_CAT(trait,_impl_) \
 { \
@@ -172,7 +174,7 @@
 template< typename T > \
 struct BOOST_PP_CAT(trait,_impl_)< \
       T \
- , typename boost::mpl::aux::msvc71_sfinae_helper< typename T::name >::type \
+ , typename BOOST_PP_CAT(trait, _msvc_sfinae_helper)< typename T::name >::type \
> \
 { \
     BOOST_STATIC_CONSTANT(bool, value = true); \


Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk