$include_dir="/home/hyper-archives/boost-commit/include"; include("$include_dir/msg-header.inc") ?>
Subject: [Boost-commit] svn:boost r74182 - trunk/boost/unordered/detail
From: dnljms_at_[hidden]
Date: 2011-09-01 04:26:38
Author: danieljames
Date: 2011-09-01 04:26:36 EDT (Thu, 01 Sep 2011)
New Revision: 74182
URL: http://svn.boost.org/trac/boost/changeset/74182
Log:
Unordered: Use return type SFINAE, seems to be more portable.
Text files modified: 
   trunk/boost/unordered/detail/allocator_helpers.hpp |    11 +++++------                             
   1 files changed, 5 insertions(+), 6 deletions(-)
Modified: trunk/boost/unordered/detail/allocator_helpers.hpp
==============================================================================
--- trunk/boost/unordered/detail/allocator_helpers.hpp	(original)
+++ trunk/boost/unordered/detail/allocator_helpers.hpp	2011-09-01 04:26:36 EDT (Thu, 01 Sep 2011)
@@ -225,17 +225,16 @@
                                                                             \
     template <BOOST_PP_CAT(check, count) e>                                 \
     struct BOOST_PP_CAT(test, count) {                                      \
-        typedef void* type;                                                 \
+        typedef BOOST_PP_CAT(choice, result) type;                          \
     };                                                                      \
                                                                             \
-    template <class U> static BOOST_PP_CAT(choice, result)::type            \
-        test(BOOST_PP_CAT(choice, count),                                   \
-            typename BOOST_PP_CAT(test, count)<                             \
-                &U::name>::type = 0)
+    template <class U> static BOOST_DEDUCED_TYPENAME                        \
+        BOOST_PP_CAT(test, count)<&U::name>::type                           \
+        test(BOOST_PP_CAT(choice, count))
 
 #define BOOST_UNORDERED_DEFAULT_MEMBER(count, result)                       \
     template <class U> static BOOST_PP_CAT(choice, result)::type            \
-        test(BOOST_PP_CAT(choice, count), void* = 0)
+        test(BOOST_PP_CAT(choice, count))
 
 
     template <typename T>