Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r80898 - in sandbox/enable_if: include/boost/utility libs/enable_if/doc/html libs/enable_if/doc/html/enable_if_macros libs/enable_if/test
From: rivorus_at_[hidden]
Date: 2012-10-07 15:38:22


Author: matt_calabrese
Date: 2012-10-07 15:38:19 EDT (Sun, 07 Oct 2012)
New Revision: 80898
URL: http://svn.boost.org/trac/boost/changeset/80898

Log:
Updated the function template form of the enable_if macros to use an enum instead of int. This avoids potential ambiguities when a user has additional function template overloads with more template parameters.
Text files modified:
   sandbox/enable_if/include/boost/utility/enable_if_macros.hpp | 53 ++++++++++++++++++++++++---------------
   sandbox/enable_if/libs/enable_if/doc/html/enable_if_macros/function_template_macros.html | 4 +-
   sandbox/enable_if/libs/enable_if/doc/html/enable_if_macros/type_template_macros.html | 6 ++--
   sandbox/enable_if/libs/enable_if/doc/html/index.html | 2
   sandbox/enable_if/libs/enable_if/test/disable_if.cpp | 2
   sandbox/enable_if/libs/enable_if/test/disable_if_c.cpp | 2
   sandbox/enable_if/libs/enable_if/test/enable_if.cpp | 2
   sandbox/enable_if/libs/enable_if/test/enable_if_c.cpp | 2
   sandbox/enable_if/libs/enable_if/test/lazy_disable_if.cpp | 2
   sandbox/enable_if/libs/enable_if/test/lazy_disable_if_c.cpp | 2
   sandbox/enable_if/libs/enable_if/test/lazy_enable_if.cpp | 2
   sandbox/enable_if/libs/enable_if/test/lazy_enable_if_c.cpp | 2
   sandbox/enable_if/libs/enable_if/test/type_disable_if.cpp | 4 +-
   sandbox/enable_if/libs/enable_if/test/type_disable_if_c.cpp | 4 +-
   sandbox/enable_if/libs/enable_if/test/type_enable_if.cpp | 4 +-
   sandbox/enable_if/libs/enable_if/test/type_enable_if_c.cpp | 4 +-
   sandbox/enable_if/libs/enable_if/test/type_enable_if_expr.cpp | 2
   sandbox/enable_if/libs/enable_if/test/type_enable_if_expr_seq.cpp | 2
   18 files changed, 56 insertions(+), 45 deletions(-)

Modified: sandbox/enable_if/include/boost/utility/enable_if_macros.hpp
==============================================================================
--- sandbox/enable_if/include/boost/utility/enable_if_macros.hpp (original)
+++ sandbox/enable_if/include/boost/utility/enable_if_macros.hpp 2012-10-07 15:38:19 EDT (Sun, 07 Oct 2012)
@@ -53,11 +53,13 @@
 
 namespace boost { namespace enable_if_detail {
 
+enum enabler_type { enabler_type_enabler };
+
 template< class Dummy, bool C >
-struct enable_if_c_impl : boost::enable_if_c< C, int > {};
+struct enable_if_c_impl : boost::enable_if_c< C, enabler_type > {};
 
 template< class Dummy, bool C >
-struct disable_if_c_impl : boost::enable_if_c< !C, int > {};
+struct disable_if_c_impl : boost::enable_if_c< !C, enabler_type > {};
 
 template< class Dummy, bool C, class LazyType >
 struct lazy_enable_if_c_impl : boost::enable_if_c< C, LazyType > {};
@@ -66,10 +68,10 @@
 struct lazy_disable_if_c_impl : boost::enable_if_c< !C, LazyType > {};
 
 template< class Dummy, class C >
-struct enable_if_impl : boost::enable_if_c< C::value, int > {};
+struct enable_if_impl : boost::enable_if_c< C::value, enabler_type > {};
 
 template< class Dummy, class C >
-struct disable_if_impl : boost::enable_if_c< !C::value, int > {};
+struct disable_if_impl : boost::enable_if_c< !C::value, enabler_type > {};
 
 template< class Dummy, class C, class LazyType >
 struct lazy_enable_if_impl : boost::enable_if_c< C::value, LazyType > {};
@@ -77,7 +79,8 @@
 template< class Dummy, class C, class LazyType >
 struct lazy_disable_if_impl : boost::enable_if_c< !C::value, LazyType > {};
 
-template< class... T > struct always_int { typedef int type; };
+template< class... T >
+struct always_enabler_type { typedef enabler_type type; };
 
 template< class... T > struct always_true { static bool const value = true; };
 
@@ -85,6 +88,10 @@
 
 } }
 
+#define BOOST_DECLARE_ENABLE_IF_PARAM_NO_DEFAULT() class
+
+#define BOOST_DECLARE_ENABLE_IF_PARAM() class = void
+
 #define BOOST_TYPE_ENABLE_IF( ... ) \
 typename ::boost::enable_if_c< __VA_ARGS__::value >::type
 
@@ -98,7 +105,8 @@
 typename ::boost::enable_if_c< !__VA_ARGS__ >::type
 
 #define BOOST_ENABLE_IF_C( ... ) \
-BOOST_ENABLE_IF_DEFINITION_C( __VA_ARGS__ ) = 0
+BOOST_ENABLE_IF_DEFINITION_C( __VA_ARGS__ ) \
+= ::boost::enable_if_detail::enabler_type_enabler
 
 #define BOOST_ENABLE_IF_DEFINITION_C( ... ) \
 class BoostDetailEnableIfDependentType = void, \
@@ -108,7 +116,8 @@
>::type
 
 #define BOOST_DISABLE_IF_C( ... ) \
-BOOST_DISABLE_IF_DEFINITION_C( __VA_ARGS__ ) = 0
+BOOST_DISABLE_IF_DEFINITION_C( __VA_ARGS__ ) \
+= ::boost::enable_if_detail::enabler_type_enabler
 
 #define BOOST_DISABLE_IF_DEFINITION_C( ... ) \
 class BoostDetailDisableIfDependentType = void, \
@@ -122,14 +131,14 @@
 typename ::boost::enable_if_detail::enable_if_impl \
 < BoostDetailEnableIfDependentType \
 , __VA_ARGS__ \
->::type = 0
+>::type = ::boost::enable_if_detail::enabler_type_enabler
 
 #define BOOST_DISABLE_IF( ... ) \
 class BoostDetailDisableIfDependentType = void, \
 typename ::boost::enable_if_detail::disable_if_impl \
 < BoostDetailDisableIfDependentType \
 , __VA_ARGS__ \
->::type = 0
+>::type = ::boost::enable_if_detail::enabler_type_enabler
 
 #define BOOST_DISABLE() BOOST_DISABLE_IF_C( true )
 
@@ -144,15 +153,16 @@
             )( __VA_ARGS__ )
 
 #define BOOST_ENABLE_IF_EXPR_IMPL_NO_PAREN( ... ) \
-typename ::boost::enable_if_detail::always_int \
-< decltype( __VA_ARGS__ ) >::type = 0
+typename ::boost::enable_if_detail::always_enabler_type \
+< decltype( __VA_ARGS__ ) >::type \
+= ::boost::enable_if_detail::enabler_type_enabler
 
 #define BOOST_ENABLE_IF_EXPR_IMPL_WITH_PAREN( ... ) \
-typename ::boost::enable_if_detail::always_int \
+typename ::boost::enable_if_detail::always_enabler_type \
 < void BOOST_PP_SEQ_FOR_EACH( BOOST_ENABLE_IF_EXPR_SEQ_MACRO, ~ \
                             , BOOST_PP_VARIADIC_SEQ_TO_SEQ( __VA_ARGS__ ) \
                             ) \
->::type = 0
+>::type = ::boost::enable_if_detail::enabler_type_enabler
 
 #define BOOST_ENABLE_IF_EXPR_SEQ_MACRO( r, data, elem ) , decltype elem
 
@@ -163,8 +173,9 @@
             )( expressions, __VA_ARGS__ )
 
 #define BOOST_LAZY_ENABLE_IF_EXPR_IMPL_NO_PAREN( expression, ... ) \
-typename ::boost::enable_if_detail::always_int \
-< decltype( expression ) >::type = 0 \
+typename ::boost::enable_if_detail::always_enabler_type \
+< decltype( expression ) >::type \
+= ::boost::enable_if_detail::enabler_type_enabler \
 BOOST_PP_SEQ_FOR_EACH \
 ( BOOST_LAZY_ENABLE_IF_EXPR_DETAIL_MACRO \
 , ::boost::enable_if_detail::always_true< decltype( expression ) >::value \
@@ -172,11 +183,11 @@
 )
 
 #define BOOST_LAZY_ENABLE_IF_EXPR_IMPL_WITH_PAREN( expressions, ... ) \
-typename ::boost::enable_if_detail::always_int \
+typename ::boost::enable_if_detail::always_enabler_type \
 < void BOOST_PP_SEQ_FOR_EACH( BOOST_ENABLE_IF_EXPR_SEQ_MACRO, ~ \
                             , BOOST_PP_VARIADIC_SEQ_TO_SEQ( expressions ) \
                             ) \
->::type = 0 \
+>::type = ::boost::enable_if_detail::enabler_type_enabler \
 BOOST_PP_SEQ_FOR_EACH \
 ( BOOST_LAZY_ENABLE_IF_EXPR_DETAIL_MACRO \
 , ( ::boost::enable_if_detail::always_true \
@@ -208,7 +219,7 @@
 typename ::boost::enable_if_detail::enable_if_c_impl \
 < BoostDetailEnableIfDependentType \
 , ( condition ) \
->::type = 0 \
+>::type = ::boost::enable_if_detail::enabler_type_enabler \
 BOOST_PP_SEQ_FOR_EACH \
 ( BOOST_LAZY_ENABLE_IF_C_DETAIL_MACRO, ( condition ) \
 , BOOST_PP_VARIADIC_TO_SEQ( __VA_ARGS__ ) \
@@ -227,7 +238,7 @@
 typename ::boost::enable_if_detail::enable_if_impl \
 < BoostDetailEnableIfDependentType \
 , BOOST_DETAIL_REMOVE_PARENTHESES_IF_WRAPPED( meta_value_in_parentheses ) \
->::type = 0 \
+>::type = ::boost::enable_if_detail::enabler_type_enabler \
 BOOST_PP_SEQ_FOR_EACH \
 ( BOOST_LAZY_ENABLE_IF_DETAIL_MACRO, meta_value_in_parentheses \
 , BOOST_PP_VARIADIC_TO_SEQ( __VA_ARGS__ ) \
@@ -246,7 +257,7 @@
 typename ::boost::enable_if_detail::disable_if_c_impl \
 < BoostDetailEnableIfDependentType \
 , ( condition ) \
->::type = 0 \
+>::type = ::boost::enable_if_detail::enabler_type_enabler \
 BOOST_PP_SEQ_FOR_EACH \
 ( BOOST_LAZY_DISABLE_IF_C_DETAIL_MACRO, ( condition ) \
 , BOOST_PP_VARIADIC_TO_SEQ( __VA_ARGS__ ) \
@@ -265,7 +276,7 @@
 typename ::boost::enable_if_detail::disable_if_impl \
 < BoostDetailEnableIfDependentType \
 , BOOST_DETAIL_REMOVE_PARENTHESES_IF_WRAPPED( meta_value_in_parentheses ) \
->::type = 0 \
+>::type = ::boost::enable_if_detail::enabler_type_enabler \
 BOOST_PP_SEQ_FOR_EACH \
 ( BOOST_LAZY_DISABLE_IF_DETAIL_MACRO, meta_value_in_parentheses \
 , BOOST_PP_VARIADIC_TO_SEQ( __VA_ARGS__ ) \

Modified: sandbox/enable_if/libs/enable_if/doc/html/enable_if_macros/function_template_macros.html
==============================================================================
--- sandbox/enable_if/libs/enable_if/doc/html/enable_if_macros/function_template_macros.html (original)
+++ sandbox/enable_if/libs/enable_if/doc/html/enable_if_macros/function_template_macros.html 2012-10-07 15:38:19 EDT (Sun, 07 Oct 2012)
@@ -91,7 +91,7 @@
              <span class="special">);</span>
 
 <span class="keyword">static_assert</span><span class="special">(</span> <span class="special">!</span><span class="keyword">decltype</span><span class="special">(</span> <span class="identifier">is_arithmetic</span><span class="special">(</span> <span class="identifier">not_arithmetic_t</span><span class="special">()</span> <span class="special">)</span> <span class="special">)::</span><span class="identifier">value</span>
- <span class="special">,</span> <span class="string">"not_arithmetic_t incorrectly detected as begin arithmetic."</span>
+ <span class="special">,</span> <span class="string">"not_arithmetic_t incorrectly detected as beingarithmetic."</span>
              <span class="special">);</span>
 </pre>
 <h5>
@@ -188,7 +188,7 @@
              <span class="special">);</span>
 
 <span class="keyword">static_assert</span><span class="special">(</span> <span class="special">!</span><span class="keyword">decltype</span><span class="special">(</span> <span class="identifier">is_arithmetic</span><span class="special">(</span> <span class="identifier">not_arithmetic_t</span><span class="special">()</span> <span class="special">)</span> <span class="special">)::</span><span class="identifier">value</span>
- <span class="special">,</span> <span class="string">"not_arithmetic_t incorrectly detected as begin arithmetic."</span>
+ <span class="special">,</span> <span class="string">"not_arithmetic_t incorrectly detected as beingarithmetic."</span>
              <span class="special">);</span>
 </pre>
 </div>

Modified: sandbox/enable_if/libs/enable_if/doc/html/enable_if_macros/type_template_macros.html
==============================================================================
--- sandbox/enable_if/libs/enable_if/doc/html/enable_if_macros/type_template_macros.html (original)
+++ sandbox/enable_if/libs/enable_if/doc/html/enable_if_macros/type_template_macros.html 2012-10-07 15:38:19 EDT (Sun, 07 Oct 2012)
@@ -59,7 +59,7 @@
 <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">type_traits</span><span class="special">/</span><span class="identifier">is_arithmetic</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
 <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">utility</span><span class="special">&gt;</span>
 
-<span class="keyword">template</span><span class="special">&lt;</span> <span class="keyword">class</span> <span class="identifier">T</span><span class="special">,</span> <span class="keyword">class</span> <span class="special">=</span> <span class="keyword">void</span> <span class="special">&gt;</span>
+<span class="keyword">template</span><span class="special">&lt;</span> <span class="keyword">class</span> <span class="identifier">T</span><span class="special">,</span> <span class="identifier">BOOST_DECLARE_ENABLE_IF_PARAM</span><span class="special">()</span> <span class="special">&gt;</span>
 <span class="keyword">struct</span> <span class="identifier">is_arithmetic</span> <span class="special">:</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">false_</span> <span class="special">{};</span>
 
 <span class="keyword">template</span><span class="special">&lt;</span> <span class="keyword">class</span> <span class="identifier">T</span> <span class="special">&gt;</span>
@@ -78,7 +78,7 @@
              <span class="special">);</span>
 
 <span class="keyword">static_assert</span><span class="special">(</span> <span class="special">!</span><span class="identifier">is_arithmetic</span><span class="special">&lt;</span> <span class="identifier">not_arithmetic_t</span> <span class="special">&gt;::</span><span class="identifier">value</span>
- <span class="special">,</span> <span class="string">"not_arithmetic_t incorrectly detected as begin arithmetic."</span>
+ <span class="special">,</span> <span class="string">"not_arithmetic_t incorrectly detected as beingarithmetic."</span>
              <span class="special">);</span>
 </pre>
 </div>
@@ -123,7 +123,7 @@
 <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">mpl</span><span class="special">/</span><span class="keyword">bool</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
 <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">utility</span><span class="special">&gt;</span>
 
-<span class="keyword">template</span><span class="special">&lt;</span> <span class="keyword">class</span> <span class="identifier">T</span><span class="special">,</span> <span class="keyword">class</span> <span class="special">=</span> <span class="keyword">void</span> <span class="special">&gt;</span>
+<span class="keyword">template</span><span class="special">&lt;</span> <span class="keyword">class</span> <span class="identifier">T</span><span class="special">,</span> <span class="identifier">BOOST_DECLARE_ENABLE_IF_PARAM</span><span class="special">()</span> <span class="special">&gt;</span>
 <span class="keyword">struct</span> <span class="identifier">has_plus_and_minus</span> <span class="special">:</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">false_</span> <span class="special">{};</span>
 
 <span class="keyword">template</span><span class="special">&lt;</span> <span class="keyword">class</span> <span class="identifier">T</span> <span class="special">&gt;</span>

Modified: sandbox/enable_if/libs/enable_if/doc/html/index.html
==============================================================================
--- sandbox/enable_if/libs/enable_if/doc/html/index.html (original)
+++ sandbox/enable_if/libs/enable_if/doc/html/index.html 2012-10-07 15:38:19 EDT (Sun, 07 Oct 2012)
@@ -101,7 +101,7 @@
 </div>
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
-<td align="left"><p><small>Last revised: October 05, 2012 at 04:06:42 GMT</small></p></td>
+<td align="left"><p><small>Last revised: October 05, 2012 at 14:26:17 GMT</small></p></td>
 <td align="right"><div class="copyright-footer"></div></td>
 </tr></table>
 <hr>

Modified: sandbox/enable_if/libs/enable_if/test/disable_if.cpp
==============================================================================
--- sandbox/enable_if/libs/enable_if/test/disable_if.cpp (original)
+++ sandbox/enable_if/libs/enable_if/test/disable_if.cpp 2012-10-07 15:38:19 EDT (Sun, 07 Oct 2012)
@@ -32,5 +32,5 @@
              );
 
 static_assert( !decltype( is_arithmetic( not_arithmetic_t() ) )::value
- , "not_arithmetic_t incorrectly detected as begin arithmetic."
+ , "not_arithmetic_t incorrectly detected as beingarithmetic."
              );

Modified: sandbox/enable_if/libs/enable_if/test/disable_if_c.cpp
==============================================================================
--- sandbox/enable_if/libs/enable_if/test/disable_if_c.cpp (original)
+++ sandbox/enable_if/libs/enable_if/test/disable_if_c.cpp 2012-10-07 15:38:19 EDT (Sun, 07 Oct 2012)
@@ -31,5 +31,5 @@
              );
 
 static_assert( !decltype( is_arithmetic( not_arithmetic_t() ) )::value
- , "not_arithmetic_t incorrectly detected as begin arithmetic."
+ , "not_arithmetic_t incorrectly detected as beingarithmetic."
              );

Modified: sandbox/enable_if/libs/enable_if/test/enable_if.cpp
==============================================================================
--- sandbox/enable_if/libs/enable_if/test/enable_if.cpp (original)
+++ sandbox/enable_if/libs/enable_if/test/enable_if.cpp 2012-10-07 15:38:19 EDT (Sun, 07 Oct 2012)
@@ -31,6 +31,6 @@
              );
 
 static_assert( !decltype( is_arithmetic( not_arithmetic_t() ) )::value
- , "not_arithmetic_t incorrectly detected as begin arithmetic."
+ , "not_arithmetic_t incorrectly detected as beingarithmetic."
              );
 //]

Modified: sandbox/enable_if/libs/enable_if/test/enable_if_c.cpp
==============================================================================
--- sandbox/enable_if/libs/enable_if/test/enable_if_c.cpp (original)
+++ sandbox/enable_if/libs/enable_if/test/enable_if_c.cpp 2012-10-07 15:38:19 EDT (Sun, 07 Oct 2012)
@@ -31,5 +31,5 @@
              );
 
 static_assert( !decltype( is_arithmetic( not_arithmetic_t() ) )::value
- , "not_arithmetic_t incorrectly detected as begin arithmetic."
+ , "not_arithmetic_t incorrectly detected as beingarithmetic."
              );

Modified: sandbox/enable_if/libs/enable_if/test/lazy_disable_if.cpp
==============================================================================
--- sandbox/enable_if/libs/enable_if/test/lazy_disable_if.cpp (original)
+++ sandbox/enable_if/libs/enable_if/test/lazy_disable_if.cpp 2012-10-07 15:38:19 EDT (Sun, 07 Oct 2012)
@@ -46,5 +46,5 @@
              );
 
 static_assert( !decltype( is_arithmetic( not_arithmetic_t() ) )::value
- , "not_arithmetic_t incorrectly detected as begin arithmetic."
+ , "not_arithmetic_t incorrectly detected as beingarithmetic."
              );

Modified: sandbox/enable_if/libs/enable_if/test/lazy_disable_if_c.cpp
==============================================================================
--- sandbox/enable_if/libs/enable_if/test/lazy_disable_if_c.cpp (original)
+++ sandbox/enable_if/libs/enable_if/test/lazy_disable_if_c.cpp 2012-10-07 15:38:19 EDT (Sun, 07 Oct 2012)
@@ -45,5 +45,5 @@
              );
 
 static_assert( !decltype( is_arithmetic( not_arithmetic_t() ) )::value
- , "not_arithmetic_t incorrectly detected as begin arithmetic."
+ , "not_arithmetic_t incorrectly detected as beingarithmetic."
              );

Modified: sandbox/enable_if/libs/enable_if/test/lazy_enable_if.cpp
==============================================================================
--- sandbox/enable_if/libs/enable_if/test/lazy_enable_if.cpp (original)
+++ sandbox/enable_if/libs/enable_if/test/lazy_enable_if.cpp 2012-10-07 15:38:19 EDT (Sun, 07 Oct 2012)
@@ -46,6 +46,6 @@
              );
 
 static_assert( !decltype( is_arithmetic( not_arithmetic_t() ) )::value
- , "not_arithmetic_t incorrectly detected as begin arithmetic."
+ , "not_arithmetic_t incorrectly detected as beingarithmetic."
              );
 //]

Modified: sandbox/enable_if/libs/enable_if/test/lazy_enable_if_c.cpp
==============================================================================
--- sandbox/enable_if/libs/enable_if/test/lazy_enable_if_c.cpp (original)
+++ sandbox/enable_if/libs/enable_if/test/lazy_enable_if_c.cpp 2012-10-07 15:38:19 EDT (Sun, 07 Oct 2012)
@@ -45,5 +45,5 @@
              );
 
 static_assert( !decltype( is_arithmetic( not_arithmetic_t() ) )::value
- , "not_arithmetic_t incorrectly detected as begin arithmetic."
+ , "not_arithmetic_t incorrectly detected as beingarithmetic."
              );

Modified: sandbox/enable_if/libs/enable_if/test/type_disable_if.cpp
==============================================================================
--- sandbox/enable_if/libs/enable_if/test/type_disable_if.cpp (original)
+++ sandbox/enable_if/libs/enable_if/test/type_disable_if.cpp 2012-10-07 15:38:19 EDT (Sun, 07 Oct 2012)
@@ -13,7 +13,7 @@
 #include <boost/type_traits/is_arithmetic.hpp>
 #include <utility>
 
-template< class T, class = void >
+template< class T, BOOST_DECLARE_ENABLE_IF_PARAM() >
 struct is_arithmetic : boost::mpl::false_ {};
 
 template< class T >
@@ -34,5 +34,5 @@
              );
 
 static_assert( !is_arithmetic< not_arithmetic_t >::value
- , "not_arithmetic_t incorrectly detected as begin arithmetic."
+ , "not_arithmetic_t incorrectly detected as beingarithmetic."
              );

Modified: sandbox/enable_if/libs/enable_if/test/type_disable_if_c.cpp
==============================================================================
--- sandbox/enable_if/libs/enable_if/test/type_disable_if_c.cpp (original)
+++ sandbox/enable_if/libs/enable_if/test/type_disable_if_c.cpp 2012-10-07 15:38:19 EDT (Sun, 07 Oct 2012)
@@ -12,7 +12,7 @@
 #include <boost/type_traits/is_arithmetic.hpp>
 #include <utility>
 
-template< class T, class = void >
+template< class T, BOOST_DECLARE_ENABLE_IF_PARAM() >
 struct is_arithmetic : boost::mpl::false_ {};
 
 template< class T >
@@ -31,5 +31,5 @@
              );
 
 static_assert( !is_arithmetic< not_arithmetic_t >::value
- , "not_arithmetic_t incorrectly detected as begin arithmetic."
+ , "not_arithmetic_t incorrectly detected as beingarithmetic."
              );

Modified: sandbox/enable_if/libs/enable_if/test/type_enable_if.cpp
==============================================================================
--- sandbox/enable_if/libs/enable_if/test/type_enable_if.cpp (original)
+++ sandbox/enable_if/libs/enable_if/test/type_enable_if.cpp 2012-10-07 15:38:19 EDT (Sun, 07 Oct 2012)
@@ -13,7 +13,7 @@
 #include <boost/type_traits/is_arithmetic.hpp>
 #include <utility>
 
-template< class T, class = void >
+template< class T, BOOST_DECLARE_ENABLE_IF_PARAM() >
 struct is_arithmetic : boost::mpl::false_ {};
 
 template< class T >
@@ -32,6 +32,6 @@
              );
 
 static_assert( !is_arithmetic< not_arithmetic_t >::value
- , "not_arithmetic_t incorrectly detected as begin arithmetic."
+ , "not_arithmetic_t incorrectly detected as beingarithmetic."
              );
 //]

Modified: sandbox/enable_if/libs/enable_if/test/type_enable_if_c.cpp
==============================================================================
--- sandbox/enable_if/libs/enable_if/test/type_enable_if_c.cpp (original)
+++ sandbox/enable_if/libs/enable_if/test/type_enable_if_c.cpp 2012-10-07 15:38:19 EDT (Sun, 07 Oct 2012)
@@ -12,7 +12,7 @@
 #include <boost/type_traits/is_arithmetic.hpp>
 #include <utility>
 
-template< class T, class = void >
+template< class T, BOOST_DECLARE_ENABLE_IF_PARAM() >
 struct is_arithmetic : boost::mpl::false_ {};
 
 template< class T >
@@ -31,5 +31,5 @@
              );
 
 static_assert( !is_arithmetic< not_arithmetic_t >::value
- , "not_arithmetic_t incorrectly detected as begin arithmetic."
+ , "not_arithmetic_t incorrectly detected as beingarithmetic."
              );

Modified: sandbox/enable_if/libs/enable_if/test/type_enable_if_expr.cpp
==============================================================================
--- sandbox/enable_if/libs/enable_if/test/type_enable_if_expr.cpp (original)
+++ sandbox/enable_if/libs/enable_if/test/type_enable_if_expr.cpp 2012-10-07 15:38:19 EDT (Sun, 07 Oct 2012)
@@ -11,7 +11,7 @@
 #include <boost/mpl/bool.hpp>
 #include <utility>
 
-template< class T, class = void >
+template< class T, BOOST_DECLARE_ENABLE_IF_PARAM() >
 struct has_plus : boost::mpl::false_ {};
 
 template< class T >

Modified: sandbox/enable_if/libs/enable_if/test/type_enable_if_expr_seq.cpp
==============================================================================
--- sandbox/enable_if/libs/enable_if/test/type_enable_if_expr_seq.cpp (original)
+++ sandbox/enable_if/libs/enable_if/test/type_enable_if_expr_seq.cpp 2012-10-07 15:38:19 EDT (Sun, 07 Oct 2012)
@@ -12,7 +12,7 @@
 #include <boost/mpl/bool.hpp>
 #include <utility>
 
-template< class T, class = void >
+template< class T, BOOST_DECLARE_ENABLE_IF_PARAM() >
 struct has_plus_and_minus : boost::mpl::false_ {};
 
 template< class T >


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