Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r69827 - in sandbox/type_traits: boost/type_traits boost/type_traits/detail libs/type_traits/doc libs/type_traits/doc/html libs/type_traits/doc/html/boost_typetraits libs/type_traits/doc/html/boost_typetraits/category libs/type_traits/doc/html/boost_typetraits/category/value_traits libs/type_traits/doc/html/boost_typetraits/reference
From: frederic.bron_at_[hidden]
Date: 2011-03-10 16:09:31


Author: bronf
Date: 2011-03-10 16:09:13 EST (Thu, 10 Mar 2011)
New Revision: 69827
URL: http://svn.boost.org/trac/boost/changeset/69827

Log:
operator traits: removed is_base_of with wrong implementation, fixed bug for comparison operators using is_base_of
Removed:
   sandbox/type_traits/boost/type_traits/is_base_and_derived.hpp
   sandbox/type_traits/boost/type_traits/is_base_of.hpp
Text files modified:
   sandbox/type_traits/boost/type_traits/detail/has_binary_operator.hpp | 2 ++
   sandbox/type_traits/boost/type_traits/detail/has_postfix_operator.hpp | 1 +
   sandbox/type_traits/boost/type_traits/detail/has_prefix_operator.hpp | 1 +
   sandbox/type_traits/boost/type_traits/has_operator_dereference.hpp | 2 +-
   sandbox/type_traits/boost/type_traits/has_operator_equal_to.hpp | 11 ++++++-----
   sandbox/type_traits/boost/type_traits/has_operator_greater.hpp | 11 ++++++-----
   sandbox/type_traits/boost/type_traits/has_operator_greater_equal.hpp | 11 ++++++-----
   sandbox/type_traits/boost/type_traits/has_operator_less.hpp | 11 ++++++-----
   sandbox/type_traits/boost/type_traits/has_operator_less_equal.hpp | 11 ++++++-----
   sandbox/type_traits/boost/type_traits/has_operator_minus.hpp | 6 +++---
   sandbox/type_traits/boost/type_traits/has_operator_minus_equal.hpp | 2 +-
   sandbox/type_traits/boost/type_traits/has_operator_not_equal_to.hpp | 11 ++++++-----
   sandbox/type_traits/boost/type_traits/has_operator_plus.hpp | 4 ++--
   sandbox/type_traits/boost/type_traits/has_operator_plus_equal.hpp | 4 ++--
   sandbox/type_traits/boost/type_traits/has_operator_postfix_decrement.hpp | 2 +-
   sandbox/type_traits/boost/type_traits/has_operator_postfix_increment.hpp | 2 +-
   sandbox/type_traits/boost/type_traits/has_operator_prefix_decrement.hpp | 2 +-
   sandbox/type_traits/boost/type_traits/has_operator_prefix_increment.hpp | 2 +-
   sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/background.html | 22 +++++++++++-----------
   sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/category/transform.html | 2 +-
   sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/category/value_traits/operators.html | 20 +++++++++++---------
   sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/intrinsics.html | 2 +-
   sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/add_const.html | 2 +-
   sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/add_cv.html | 2 +-
   sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/add_pointer.html | 2 +-
   sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/add_reference.html | 2 +-
   sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/add_volatile.html | 2 +-
   sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/decay.html | 2 +-
   sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/floating_point_promotion.html | 2 +-
   sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/function_traits.html | 4 ++--
   sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/integral_promotion.html | 2 +-
   sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/make_signed.html | 2 +-
   sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/make_unsigned.html | 2 +-
   sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/member_object.html | 2 +-
   sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/promote.html | 2 +-
   sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/remove_all_extents.html | 2 +-
   sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/remove_const.html | 2 +-
   sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/remove_cv.html | 2 +-
   sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/remove_extent.html | 2 +-
   sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/remove_member_pointer.html | 2 +-
   sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/remove_pointer.html | 2 +-
   sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/remove_reference.html | 2 +-
   sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/remove_volatile.html | 2 +-
   sandbox/type_traits/libs/type_traits/doc/html/index.html | 2 +-
   sandbox/type_traits/libs/type_traits/doc/operators.qbk | 2 ++
   45 files changed, 102 insertions(+), 88 deletions(-)

Modified: sandbox/type_traits/boost/type_traits/detail/has_binary_operator.hpp
==============================================================================
--- sandbox/type_traits/boost/type_traits/detail/has_binary_operator.hpp (original)
+++ sandbox/type_traits/boost/type_traits/detail/has_binary_operator.hpp 2011-03-10 16:09:13 EST (Thu, 10 Mar 2011)
@@ -194,6 +194,8 @@
    typedef typename ::boost::remove_reference<RHS>::type rhs_noref;
    typedef typename ::boost::remove_cv<lhs_noref>::type lhs_nocv;
    typedef typename ::boost::remove_cv<rhs_noref>::type rhs_nocv;
+ typedef typename ::boost::remove_cv< typename ::boost::remove_reference< typename ::boost::remove_pointer<lhs_noref>::type >::type >::type lhs_noptr;
+ typedef typename ::boost::remove_cv< typename ::boost::remove_reference< typename ::boost::remove_pointer<rhs_noref>::type >::type >::type rhs_noptr;
    BOOST_STATIC_CONSTANT(bool, value = (BOOST_JOIN(BOOST_TT_TRAIT_NAME,_impl1) < lhs_noref, rhs_noref, RET, BOOST_TT_FORBIDDEN_IF >::value));
 };
 

Modified: sandbox/type_traits/boost/type_traits/detail/has_postfix_operator.hpp
==============================================================================
--- sandbox/type_traits/boost/type_traits/detail/has_postfix_operator.hpp (original)
+++ sandbox/type_traits/boost/type_traits/detail/has_postfix_operator.hpp 2011-03-10 16:09:13 EST (Thu, 10 Mar 2011)
@@ -150,6 +150,7 @@
 struct BOOST_JOIN(BOOST_TT_TRAIT_NAME,_impl) {
    typedef typename ::boost::remove_reference<LHS>::type lhs_noref;
    typedef typename ::boost::remove_cv<lhs_noref>::type lhs_nocv;
+ typedef typename ::boost::remove_cv< typename ::boost::remove_reference< typename ::boost::remove_pointer<lhs_noref>::type >::type >::type lhs_noptr;
    BOOST_STATIC_CONSTANT(bool, value = (BOOST_JOIN(BOOST_TT_TRAIT_NAME,_impl1) < lhs_noref, RET, BOOST_TT_FORBIDDEN_IF >::value));
 };
 

Modified: sandbox/type_traits/boost/type_traits/detail/has_prefix_operator.hpp
==============================================================================
--- sandbox/type_traits/boost/type_traits/detail/has_prefix_operator.hpp (original)
+++ sandbox/type_traits/boost/type_traits/detail/has_prefix_operator.hpp 2011-03-10 16:09:13 EST (Thu, 10 Mar 2011)
@@ -167,6 +167,7 @@
 struct BOOST_JOIN(BOOST_TT_TRAIT_NAME,_impl) {
    typedef typename ::boost::remove_reference<RHS>::type rhs_noref;
    typedef typename ::boost::remove_cv<rhs_noref>::type rhs_nocv;
+ typedef typename ::boost::remove_cv< typename ::boost::remove_reference< typename ::boost::remove_pointer<rhs_noref>::type >::type >::type rhs_noptr;
    BOOST_STATIC_CONSTANT(bool, value = (BOOST_JOIN(BOOST_TT_TRAIT_NAME,_impl1) < rhs_noref, RET, BOOST_TT_FORBIDDEN_IF >::value));
 };
 

Modified: sandbox/type_traits/boost/type_traits/has_operator_dereference.hpp
==============================================================================
--- sandbox/type_traits/boost/type_traits/has_operator_dereference.hpp (original)
+++ sandbox/type_traits/boost/type_traits/has_operator_dereference.hpp 2011-03-10 16:09:13 EST (Thu, 10 Mar 2011)
@@ -17,7 +17,7 @@
    ::boost::type_traits::ice_or<\
       ::boost::type_traits::ice_and<\
          ::boost::is_pointer< rhs_noref >::value,\
- ::boost::is_void< typename ::boost::remove_pointer< rhs_noref >::type >::value\
+ ::boost::is_void< rhs_noptr >::value\
>::value,\
       ::boost::is_fundamental< rhs_nocv >::value\
>::value

Modified: sandbox/type_traits/boost/type_traits/has_operator_equal_to.hpp
==============================================================================
--- sandbox/type_traits/boost/type_traits/has_operator_equal_to.hpp (original)
+++ sandbox/type_traits/boost/type_traits/has_operator_equal_to.hpp 2011-03-10 16:09:13 EST (Thu, 10 Mar 2011)
@@ -23,16 +23,17 @@
          ::boost::is_pointer< rhs_noref >::value,\
          ::boost::is_fundamental< lhs_nocv >::value\
>::value,\
- /* two pointers but no inheritance */\
+ /* two pointers but no inheritance or no void* */\
       ::boost::type_traits::ice_and<\
          ::boost::is_pointer< lhs_noref >::value,\
          ::boost::is_pointer< rhs_noref >::value,\
          ::boost::type_traits::ice_not<\
             ::boost::type_traits::ice_or<\
- ::boost::is_base_of< typename ::boost::remove_reference< typename ::boost::remove_pointer< lhs_noref >::type >::type, typename ::boost::remove_reference< typename ::boost::remove_pointer< rhs_noref >::type >::type >::value,\
- ::boost::is_base_of< typename ::boost::remove_reference< typename ::boost::remove_pointer< rhs_noref >::type >::type, typename ::boost::remove_reference< typename ::boost::remove_pointer< lhs_noref >::type >::type >::value,\
- ::boost::is_void< typename ::boost::remove_pointer< lhs_noref >::type >::value,\
- ::boost::is_void< typename ::boost::remove_pointer< rhs_noref >::type >::value\
+ ::boost::is_base_of< lhs_noptr, rhs_noptr >::value,\
+ ::boost::is_base_of< rhs_noptr, lhs_noptr >::value,\
+ ::boost::is_same< lhs_noptr, rhs_noptr >::value,\
+ ::boost::is_void< lhs_noptr >::value,\
+ ::boost::is_void< rhs_noptr >::value\
>::value\
>::value\
>::value\

Modified: sandbox/type_traits/boost/type_traits/has_operator_greater.hpp
==============================================================================
--- sandbox/type_traits/boost/type_traits/has_operator_greater.hpp (original)
+++ sandbox/type_traits/boost/type_traits/has_operator_greater.hpp 2011-03-10 16:09:13 EST (Thu, 10 Mar 2011)
@@ -23,16 +23,17 @@
          ::boost::is_pointer< rhs_noref >::value,\
          ::boost::is_fundamental< lhs_nocv >::value\
>::value,\
- /* two pointers but no inheritance */\
+ /* two pointers but no inheritance or no void* */\
       ::boost::type_traits::ice_and<\
          ::boost::is_pointer< lhs_noref >::value,\
          ::boost::is_pointer< rhs_noref >::value,\
          ::boost::type_traits::ice_not<\
             ::boost::type_traits::ice_or<\
- ::boost::is_base_of< typename ::boost::remove_reference< typename ::boost::remove_pointer< lhs_noref >::type >::type, typename ::boost::remove_reference< typename ::boost::remove_pointer< rhs_noref >::type >::type >::value,\
- ::boost::is_base_of< typename ::boost::remove_reference< typename ::boost::remove_pointer< rhs_noref >::type >::type, typename ::boost::remove_reference< typename ::boost::remove_pointer< lhs_noref >::type >::type >::value,\
- ::boost::is_void< typename ::boost::remove_pointer< lhs_noref >::type >::value,\
- ::boost::is_void< typename ::boost::remove_pointer< rhs_noref >::type >::value\
+ ::boost::is_base_of< lhs_noptr, rhs_noptr >::value,\
+ ::boost::is_base_of< rhs_noptr, lhs_noptr >::value,\
+ ::boost::is_same< lhs_noptr, rhs_noptr >::value,\
+ ::boost::is_void< lhs_noptr >::value,\
+ ::boost::is_void< rhs_noptr >::value\
>::value\
>::value\
>::value\

Modified: sandbox/type_traits/boost/type_traits/has_operator_greater_equal.hpp
==============================================================================
--- sandbox/type_traits/boost/type_traits/has_operator_greater_equal.hpp (original)
+++ sandbox/type_traits/boost/type_traits/has_operator_greater_equal.hpp 2011-03-10 16:09:13 EST (Thu, 10 Mar 2011)
@@ -23,16 +23,17 @@
          ::boost::is_pointer< rhs_noref >::value,\
          ::boost::is_fundamental< lhs_nocv >::value\
>::value,\
- /* two pointers but no inheritance */\
+ /* two pointers but no inheritance or no void* */\
       ::boost::type_traits::ice_and<\
          ::boost::is_pointer< lhs_noref >::value,\
          ::boost::is_pointer< rhs_noref >::value,\
          ::boost::type_traits::ice_not<\
             ::boost::type_traits::ice_or<\
- ::boost::is_base_of< typename ::boost::remove_reference< typename ::boost::remove_pointer< lhs_noref >::type >::type, typename ::boost::remove_reference< typename ::boost::remove_pointer< rhs_noref >::type >::type >::value,\
- ::boost::is_base_of< typename ::boost::remove_reference< typename ::boost::remove_pointer< rhs_noref >::type >::type, typename ::boost::remove_reference< typename ::boost::remove_pointer< lhs_noref >::type >::type >::value,\
- ::boost::is_void< typename ::boost::remove_pointer< lhs_noref >::type >::value,\
- ::boost::is_void< typename ::boost::remove_pointer< rhs_noref >::type >::value\
+ ::boost::is_base_of< lhs_noptr, rhs_noptr >::value,\
+ ::boost::is_base_of< rhs_noptr, lhs_noptr >::value,\
+ ::boost::is_same< lhs_noptr, rhs_noptr >::value,\
+ ::boost::is_void< lhs_noptr >::value,\
+ ::boost::is_void< rhs_noptr >::value\
>::value\
>::value\
>::value\

Modified: sandbox/type_traits/boost/type_traits/has_operator_less.hpp
==============================================================================
--- sandbox/type_traits/boost/type_traits/has_operator_less.hpp (original)
+++ sandbox/type_traits/boost/type_traits/has_operator_less.hpp 2011-03-10 16:09:13 EST (Thu, 10 Mar 2011)
@@ -23,16 +23,17 @@
          ::boost::is_pointer< rhs_noref >::value,\
          ::boost::is_fundamental< lhs_nocv >::value\
>::value,\
- /* two pointers but no inheritance */\
+ /* two pointers but no inheritance or no void* */\
       ::boost::type_traits::ice_and<\
          ::boost::is_pointer< lhs_noref >::value,\
          ::boost::is_pointer< rhs_noref >::value,\
          ::boost::type_traits::ice_not<\
             ::boost::type_traits::ice_or<\
- ::boost::is_base_of< typename ::boost::remove_reference< typename ::boost::remove_pointer< lhs_noref >::type >::type, typename ::boost::remove_reference< typename ::boost::remove_pointer< rhs_noref >::type >::type >::value,\
- ::boost::is_base_of< typename ::boost::remove_reference< typename ::boost::remove_pointer< rhs_noref >::type >::type, typename ::boost::remove_reference< typename ::boost::remove_pointer< lhs_noref >::type >::type >::value,\
- ::boost::is_void< typename ::boost::remove_pointer< lhs_noref >::type >::value,\
- ::boost::is_void< typename ::boost::remove_pointer< rhs_noref >::type >::value\
+ ::boost::is_base_of< lhs_noptr, rhs_noptr >::value,\
+ ::boost::is_base_of< rhs_noptr, lhs_noptr >::value,\
+ ::boost::is_same< lhs_noptr, rhs_noptr >::value,\
+ ::boost::is_void< lhs_noptr >::value,\
+ ::boost::is_void< rhs_noptr >::value\
>::value\
>::value\
>::value\

Modified: sandbox/type_traits/boost/type_traits/has_operator_less_equal.hpp
==============================================================================
--- sandbox/type_traits/boost/type_traits/has_operator_less_equal.hpp (original)
+++ sandbox/type_traits/boost/type_traits/has_operator_less_equal.hpp 2011-03-10 16:09:13 EST (Thu, 10 Mar 2011)
@@ -23,16 +23,17 @@
          ::boost::is_pointer< rhs_noref >::value,\
          ::boost::is_fundamental< lhs_nocv >::value\
>::value,\
- /* two pointers but no inheritance */\
+ /* two pointers but no inheritance or no void* */\
       ::boost::type_traits::ice_and<\
          ::boost::is_pointer< lhs_noref >::value,\
          ::boost::is_pointer< rhs_noref >::value,\
          ::boost::type_traits::ice_not<\
             ::boost::type_traits::ice_or<\
- ::boost::is_base_of< typename ::boost::remove_reference< typename ::boost::remove_pointer< lhs_noref >::type >::type, typename ::boost::remove_reference< typename ::boost::remove_pointer< rhs_noref >::type >::type >::value,\
- ::boost::is_base_of< typename ::boost::remove_reference< typename ::boost::remove_pointer< rhs_noref >::type >::type, typename ::boost::remove_reference< typename ::boost::remove_pointer< lhs_noref >::type >::type >::value,\
- ::boost::is_void< typename ::boost::remove_pointer< lhs_noref >::type >::value,\
- ::boost::is_void< typename ::boost::remove_pointer< rhs_noref >::type >::value\
+ ::boost::is_base_of< lhs_noptr, rhs_noptr >::value,\
+ ::boost::is_base_of< rhs_noptr, lhs_noptr >::value,\
+ ::boost::is_same< lhs_noptr, rhs_noptr >::value,\
+ ::boost::is_void< lhs_noptr >::value,\
+ ::boost::is_void< rhs_noptr >::value\
>::value\
>::value\
>::value\

Modified: sandbox/type_traits/boost/type_traits/has_operator_minus.hpp
==============================================================================
--- sandbox/type_traits/boost/type_traits/has_operator_minus.hpp (original)
+++ sandbox/type_traits/boost/type_traits/has_operator_minus.hpp 2011-03-10 16:09:13 EST (Thu, 10 Mar 2011)
@@ -17,7 +17,7 @@
       /* void* with fundamental or pointer */\
       ::boost::type_traits::ice_and<\
          ::boost::is_pointer< lhs_noref >::value,\
- ::boost::is_void< typename ::boost::remove_pointer< lhs_noref >::type >::value,\
+ ::boost::is_void< lhs_noptr >::value,\
          ::boost::type_traits::ice_or<\
             ::boost::is_fundamental< rhs_nocv >::value,\
             ::boost::is_pointer< rhs_noref >::value\
@@ -25,7 +25,7 @@
>::value,\
       ::boost::type_traits::ice_and<\
          ::boost::is_pointer< rhs_noref >::value,\
- ::boost::is_void< typename ::boost::remove_pointer< rhs_noref >::type >::value,\
+ ::boost::is_void< rhs_noptr >::value,\
          ::boost::type_traits::ice_or<\
             ::boost::is_fundamental< lhs_nocv >::value,\
             ::boost::is_pointer< lhs_noref >::value\
@@ -34,7 +34,7 @@
       /* LHS==pointer!=void* and RHS==fundamental non integral */\
       ::boost::type_traits::ice_and<\
          ::boost::is_pointer< lhs_noref >::value,\
- ::boost::type_traits::ice_not< ::boost::is_void< typename ::boost::remove_pointer< lhs_noref >::type >::value >::value,\
+ ::boost::type_traits::ice_not< ::boost::is_void< lhs_noptr >::value >::value,\
          ::boost::is_fundamental< rhs_nocv >::value,\
          ::boost::type_traits::ice_not< ::boost::is_integral< rhs_noref >::value >::value\
>::value,\

Modified: sandbox/type_traits/boost/type_traits/has_operator_minus_equal.hpp
==============================================================================
--- sandbox/type_traits/boost/type_traits/has_operator_minus_equal.hpp (original)
+++ sandbox/type_traits/boost/type_traits/has_operator_minus_equal.hpp 2011-03-10 16:09:13 EST (Thu, 10 Mar 2011)
@@ -33,7 +33,7 @@
          ::boost::is_pointer< lhs_noref >::value,\
          ::boost::is_fundamental< rhs_nocv >::value,\
          ::boost::type_traits::ice_or<\
- ::boost::is_void< typename ::boost::remove_pointer< lhs_noref >::type >::value,\
+ ::boost::is_void< lhs_noptr >::value,\
             ::boost::type_traits::ice_not< ::boost::is_integral< rhs_noref >::value >::value\
>::value\
>::value\

Modified: sandbox/type_traits/boost/type_traits/has_operator_not_equal_to.hpp
==============================================================================
--- sandbox/type_traits/boost/type_traits/has_operator_not_equal_to.hpp (original)
+++ sandbox/type_traits/boost/type_traits/has_operator_not_equal_to.hpp 2011-03-10 16:09:13 EST (Thu, 10 Mar 2011)
@@ -23,16 +23,17 @@
          ::boost::is_pointer< rhs_noref >::value,\
          ::boost::is_fundamental< lhs_nocv >::value\
>::value,\
- /* two pointers but no inheritance */\
+ /* two pointers but no inheritance or no void* */\
       ::boost::type_traits::ice_and<\
          ::boost::is_pointer< lhs_noref >::value,\
          ::boost::is_pointer< rhs_noref >::value,\
          ::boost::type_traits::ice_not<\
             ::boost::type_traits::ice_or<\
- ::boost::is_base_of< typename ::boost::remove_reference< typename ::boost::remove_pointer< lhs_noref >::type >::type, typename ::boost::remove_reference< typename ::boost::remove_pointer< rhs_noref >::type >::type >::value,\
- ::boost::is_base_of< typename ::boost::remove_reference< typename ::boost::remove_pointer< rhs_noref >::type >::type, typename ::boost::remove_reference< typename ::boost::remove_pointer< lhs_noref >::type >::type >::value,\
- ::boost::is_void< typename ::boost::remove_pointer< lhs_noref >::type >::value,\
- ::boost::is_void< typename ::boost::remove_pointer< rhs_noref >::type >::value\
+ ::boost::is_base_of< lhs_noptr, rhs_noptr >::value,\
+ ::boost::is_base_of< rhs_noptr, lhs_noptr >::value,\
+ ::boost::is_same< lhs_noptr, rhs_noptr >::value,\
+ ::boost::is_void< lhs_noptr >::value,\
+ ::boost::is_void< rhs_noptr >::value\
>::value\
>::value\
>::value\

Modified: sandbox/type_traits/boost/type_traits/has_operator_plus.hpp
==============================================================================
--- sandbox/type_traits/boost/type_traits/has_operator_plus.hpp (original)
+++ sandbox/type_traits/boost/type_traits/has_operator_plus.hpp 2011-03-10 16:09:13 EST (Thu, 10 Mar 2011)
@@ -33,12 +33,12 @@
       /* void* with fundamental */\
       ::boost::type_traits::ice_and<\
          ::boost::is_pointer< lhs_noref >::value,\
- ::boost::is_void< typename ::boost::remove_pointer< lhs_noref >::type >::value,\
+ ::boost::is_void< lhs_noptr >::value,\
          ::boost::is_fundamental< rhs_nocv >::value\
>::value,\
       ::boost::type_traits::ice_and<\
          ::boost::is_pointer< rhs_noref >::value,\
- ::boost::is_void< typename ::boost::remove_pointer< rhs_noref >::type >::value,\
+ ::boost::is_void< rhs_noptr >::value,\
          ::boost::is_fundamental< lhs_nocv >::value\
>::value\
>::value

Modified: sandbox/type_traits/boost/type_traits/has_operator_plus_equal.hpp
==============================================================================
--- sandbox/type_traits/boost/type_traits/has_operator_plus_equal.hpp (original)
+++ sandbox/type_traits/boost/type_traits/has_operator_plus_equal.hpp 2011-03-10 16:09:13 EST (Thu, 10 Mar 2011)
@@ -28,12 +28,12 @@
       /* void* with fundamental */\
       ::boost::type_traits::ice_and<\
          ::boost::is_pointer< lhs_noref >::value,\
- ::boost::is_void< typename ::boost::remove_pointer< lhs_noref >::type >::value,\
+ ::boost::is_void< lhs_noptr >::value,\
          ::boost::is_fundamental< rhs_nocv >::value\
>::value,\
       ::boost::type_traits::ice_and<\
          ::boost::is_pointer< rhs_noref >::value,\
- ::boost::is_void< typename ::boost::remove_pointer< rhs_noref >::type >::value,\
+ ::boost::is_void< rhs_noptr >::value,\
          ::boost::is_fundamental< lhs_nocv >::value\
>::value,\
       /* LHS==pointer and RHS==fundamental non integral */\

Modified: sandbox/type_traits/boost/type_traits/has_operator_postfix_decrement.hpp
==============================================================================
--- sandbox/type_traits/boost/type_traits/has_operator_postfix_decrement.hpp (original)
+++ sandbox/type_traits/boost/type_traits/has_operator_postfix_decrement.hpp 2011-03-10 16:09:13 EST (Thu, 10 Mar 2011)
@@ -18,7 +18,7 @@
       ::boost::is_same< bool, lhs_nocv >::value,\
       ::boost::type_traits::ice_and<\
          ::boost::is_pointer< lhs_noref >::value,\
- ::boost::is_void< typename ::boost::remove_pointer< lhs_noref >::type >::value\
+ ::boost::is_void< lhs_noptr >::value\
>::value,\
       ::boost::type_traits::ice_and<\
          ::boost::is_fundamental< lhs_nocv >::value,\

Modified: sandbox/type_traits/boost/type_traits/has_operator_postfix_increment.hpp
==============================================================================
--- sandbox/type_traits/boost/type_traits/has_operator_postfix_increment.hpp (original)
+++ sandbox/type_traits/boost/type_traits/has_operator_postfix_increment.hpp 2011-03-10 16:09:13 EST (Thu, 10 Mar 2011)
@@ -17,7 +17,7 @@
    ::boost::type_traits::ice_or<\
       ::boost::type_traits::ice_and<\
          ::boost::is_pointer< lhs_noref >::value,\
- ::boost::is_void< typename ::boost::remove_pointer< lhs_noref >::type >::value\
+ ::boost::is_void< lhs_noptr >::value\
>::value,\
       ::boost::type_traits::ice_and<\
          ::boost::is_fundamental< lhs_nocv >::value,\

Modified: sandbox/type_traits/boost/type_traits/has_operator_prefix_decrement.hpp
==============================================================================
--- sandbox/type_traits/boost/type_traits/has_operator_prefix_decrement.hpp (original)
+++ sandbox/type_traits/boost/type_traits/has_operator_prefix_decrement.hpp 2011-03-10 16:09:13 EST (Thu, 10 Mar 2011)
@@ -18,7 +18,7 @@
       ::boost::is_same< bool, rhs_nocv >::value,\
       ::boost::type_traits::ice_and<\
          ::boost::is_pointer< rhs_noref >::value,\
- ::boost::is_void< typename ::boost::remove_pointer< rhs_noref >::type >::value\
+ ::boost::is_void< rhs_noptr >::value\
>::value,\
       ::boost::type_traits::ice_and<\
          ::boost::is_fundamental< rhs_nocv >::value,\

Modified: sandbox/type_traits/boost/type_traits/has_operator_prefix_increment.hpp
==============================================================================
--- sandbox/type_traits/boost/type_traits/has_operator_prefix_increment.hpp (original)
+++ sandbox/type_traits/boost/type_traits/has_operator_prefix_increment.hpp 2011-03-10 16:09:13 EST (Thu, 10 Mar 2011)
@@ -17,7 +17,7 @@
    ::boost::type_traits::ice_or<\
       ::boost::type_traits::ice_and<\
          ::boost::is_pointer< rhs_noref >::value,\
- ::boost::is_void< typename ::boost::remove_pointer< rhs_noref >::type >::value\
+ ::boost::is_void< rhs_noptr >::value\
>::value,\
       ::boost::type_traits::ice_and<\
          ::boost::is_fundamental< rhs_nocv >::value,\

Deleted: sandbox/type_traits/boost/type_traits/is_base_and_derived.hpp
==============================================================================
--- sandbox/type_traits/boost/type_traits/is_base_and_derived.hpp 2011-03-10 16:09:13 EST (Thu, 10 Mar 2011)
+++ (empty file)
@@ -1,247 +0,0 @@
-
-// (C) Copyright Rani Sharoni 2003.
-// Use, modification and distribution are subject to the Boost Software License,
-// Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
-// http://www.boost.org/LICENSE_1_0.txt).
-//
-// See http://www.boost.org/libs/type_traits for most recent version including documentation.
-
-#ifndef BOOST_TT_IS_BASE_AND_DERIVED_HPP_INCLUDED
-#define BOOST_TT_IS_BASE_AND_DERIVED_HPP_INCLUDED
-
-#include <boost/type_traits/intrinsics.hpp>
-#ifndef BOOST_IS_BASE_OF
-#include <boost/type_traits/is_class.hpp>
-#include <boost/type_traits/is_same.hpp>
-#include <boost/type_traits/is_convertible.hpp>
-#include <boost/type_traits/detail/ice_and.hpp>
-#include <boost/type_traits/remove_cv.hpp>
-#include <boost/config.hpp>
-#include <boost/static_assert.hpp>
-#endif
-
-// should be the last #include
-#include <boost/type_traits/detail/bool_trait_def.hpp>
-
-namespace boost {
-
-namespace detail {
-
-#ifndef BOOST_IS_BASE_OF
-#if !BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x581)) \
- && !BOOST_WORKAROUND(__SUNPRO_CC , <= 0x540) \
- && !BOOST_WORKAROUND(__EDG_VERSION__, <= 243) \
- && !BOOST_WORKAROUND(__DMC__, BOOST_TESTED_AT(0x840))
-
- // The EDG version number is a lower estimate.
- // It is not currently known which EDG version
- // exactly fixes the problem.
-
-/*************************************************************************
-
-This version detects ambiguous base classes and private base classes
-correctly, and was devised by Rani Sharoni.
-
-Explanation by Terje Slettebo and Rani Sharoni.
-
-Let's take the multiple base class below as an example, and the following
-will also show why there's not a problem with private or ambiguous base
-class:
-
-struct B {};
-struct B1 : B {};
-struct B2 : B {};
-struct D : private B1, private B2 {};
-
-is_base_and_derived<B, D>::value;
-
-First, some terminology:
-
-SC - Standard conversion
-UDC - User-defined conversion
-
-A user-defined conversion sequence consists of an SC, followed by an UDC,
-followed by another SC. Either SC may be the identity conversion.
-
-When passing the default-constructed Host object to the overloaded check_sig()
-functions (initialization 8.5/14/4/3), we have several viable implicit
-conversion sequences:
-
-For "static no_type check_sig(B const volatile *, int)" we have the conversion
-sequences:
-
-C -> C const (SC - Qualification Adjustment) -> B const volatile* (UDC)
-C -> D const volatile* (UDC) -> B1 const volatile* / B2 const volatile* ->
- B const volatile* (SC - Conversion)
-
-For "static yes_type check_sig(D const volatile *, T)" we have the conversion
-sequence:
-
-C -> D const volatile* (UDC)
-
-According to 13.3.3.1/4, in context of user-defined conversion only the
-standard conversion sequence is considered when selecting the best viable
-function, so it only considers up to the user-defined conversion. For the
-first function this means choosing between C -> C const and C -> C, and it
-chooses the latter, because it's a proper subset (13.3.3.2/3/2) of the
-former. Therefore, we have:
-
-C -> D const volatile* (UDC) -> B1 const volatile* / B2 const volatile* ->
- B const volatile* (SC - Conversion)
-C -> D const volatile* (UDC)
-
-Here, the principle of the "shortest subsequence" applies again, and it
-chooses C -> D const volatile*. This shows that it doesn't even need to
-consider the multiple paths to B, or accessibility, as that possibility is
-eliminated before it could possibly cause ambiguity or access violation.
-
-If D is not derived from B, it has to choose between C -> C const -> B const
-volatile* for the first function, and C -> D const volatile* for the second
-function, which are just as good (both requires a UDC, 13.3.3.2), had it not
-been for the fact that "static no_type check_sig(B const volatile *, int)" is
-not templated, which makes C -> C const -> B const volatile* the best choice
-(13.3.3/1/4), resulting in "no".
-
-Also, if Host::operator B const volatile* hadn't been const, the two
-conversion sequences for "static no_type check_sig(B const volatile *, int)", in
-the case where D is derived from B, would have been ambiguous.
-
-See also
-http://groups.google.com/groups?selm=df893da6.0301280859.522081f7%40posting.
-google.com and links therein.
-
-*************************************************************************/
-
-template <typename B, typename D>
-struct bd_helper
-{
- //
- // This VC7.1 specific workaround stops the compiler from generating
- // an internal compiler error when compiling with /vmg (thanks to
- // Aleksey Gurtovoy for figuring out the workaround).
- //
-#if !BOOST_WORKAROUND(BOOST_MSVC, == 1310)
- template <typename T>
- static type_traits::yes_type check_sig(D const volatile *, T);
- static type_traits::no_type check_sig(B const volatile *, int);
-#else
- static type_traits::yes_type check_sig(D const volatile *, long);
- static type_traits::no_type check_sig(B const volatile * const&, int);
-#endif
-};
-
-template<typename B, typename D>
-struct is_base_and_derived_impl2
-{
-#if BOOST_WORKAROUND(_MSC_FULL_VER, >= 140050000)
-#pragma warning(push)
-#pragma warning(disable:6334)
-#endif
- //
- // May silently do the wrong thing with incomplete types
- // unless we trap them here:
- //
- BOOST_STATIC_ASSERT(sizeof(B) != 0);
- BOOST_STATIC_ASSERT(sizeof(D) != 0);
-
- struct Host
- {
-#if !BOOST_WORKAROUND(BOOST_MSVC, == 1310)
- operator B const volatile *() const;
-#else
- operator B const volatile * const&() const;
-#endif
- operator D const volatile *();
- };
-
- BOOST_STATIC_CONSTANT(bool, value =
- sizeof(bd_helper<B,D>::check_sig(Host(), 0)) == sizeof(type_traits::yes_type));
-#if BOOST_WORKAROUND(_MSC_FULL_VER, >= 140050000)
-#pragma warning(pop)
-#endif
-};
-
-#else
-
-//
-// broken version:
-//
-template<typename B, typename D>
-struct is_base_and_derived_impl2
-{
- BOOST_STATIC_CONSTANT(bool, value =
- (::boost::is_convertible<D*,B*>::value));
-};
-
-#define BOOST_BROKEN_IS_BASE_AND_DERIVED
-
-#endif
-
-template <typename B, typename D>
-struct is_base_and_derived_impl3
-{
- BOOST_STATIC_CONSTANT(bool, value = false);
-};
-
-template <bool ic1, bool ic2, bool iss>
-struct is_base_and_derived_select
-{
- template <class T, class U>
- struct rebind
- {
- typedef is_base_and_derived_impl3<T,U> type;
- };
-};
-
-template <>
-struct is_base_and_derived_select<true,true,false>
-{
- template <class T, class U>
- struct rebind
- {
- typedef is_base_and_derived_impl2<T,U> type;
- };
-};
-
-template <typename B, typename D>
-struct is_base_and_derived_impl
-{
- typedef typename remove_cv<B>::type ncvB;
- typedef typename remove_cv<D>::type ncvD;
-
- typedef is_base_and_derived_select<
- ::boost::is_class<B>::value,
- ::boost::is_class<D>::value,
- ::boost::is_same<B,D>::value> selector;
- typedef typename selector::template rebind<ncvB,ncvD> binder;
- typedef typename binder::type bound_type;
-
- BOOST_STATIC_CONSTANT(bool, value = bound_type::value);
-};
-#else
-template <typename B, typename D>
-struct is_base_and_derived_impl
-{
- BOOST_STATIC_CONSTANT(bool, value = BOOST_IS_BASE_OF(B,D));
-};
-#endif
-} // namespace detail
-
-BOOST_TT_AUX_BOOL_TRAIT_DEF2(
- is_base_and_derived
- , Base
- , Derived
- , (::boost::detail::is_base_and_derived_impl<Base,Derived>::value)
- )
-
-#ifndef BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION
-BOOST_TT_AUX_BOOL_TRAIT_PARTIAL_SPEC2_2(typename Base,typename Derived,is_base_and_derived,Base&,Derived,false)
-BOOST_TT_AUX_BOOL_TRAIT_PARTIAL_SPEC2_2(typename Base,typename Derived,is_base_and_derived,Base,Derived&,false)
-BOOST_TT_AUX_BOOL_TRAIT_PARTIAL_SPEC2_2(typename Base,typename Derived,is_base_and_derived,Base&,Derived&,false)
-#endif
-
-} // namespace boost
-
-#include <boost/type_traits/detail/bool_trait_undef.hpp>
-
-#endif // BOOST_TT_IS_BASE_AND_DERIVED_HPP_INCLUDED

Deleted: sandbox/type_traits/boost/type_traits/is_base_of.hpp
==============================================================================
--- sandbox/type_traits/boost/type_traits/is_base_of.hpp 2011-03-10 16:09:13 EST (Thu, 10 Mar 2011)
+++ (empty file)
@@ -1,40 +0,0 @@
-
-// (C) Copyright Rani Sharoni 2003-2005.
-// Use, modification and distribution are subject to the Boost Software License,
-// Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
-// http://www.boost.org/LICENSE_1_0.txt).
-//
-// See http://www.boost.org/libs/type_traits for most recent version including documentation.
-
-#ifndef BOOST_TT_IS_BASE_OF_HPP_INCLUDED
-#define BOOST_TT_IS_BASE_OF_HPP_INCLUDED
-
-#include <boost/type_traits/is_base_and_derived.hpp>
-#include <boost/type_traits/is_same.hpp>
-#include <boost/type_traits/detail/ice_or.hpp>
-
-// should be the last #include
-#include <boost/type_traits/detail/bool_trait_def.hpp>
-
-namespace boost {
-
-BOOST_TT_AUX_BOOL_TRAIT_DEF2(
- is_base_of
- , Base
- , Derived
- , (::boost::type_traits::ice_or<
- (::boost::detail::is_base_and_derived_impl<Base,Derived>::value),
- (::boost::is_same<Base,Derived>::value)>::value)
- )
-
-#ifndef BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION
-BOOST_TT_AUX_BOOL_TRAIT_PARTIAL_SPEC2_2(typename Base,typename Derived,is_base_of,Base&,Derived,false)
-BOOST_TT_AUX_BOOL_TRAIT_PARTIAL_SPEC2_2(typename Base,typename Derived,is_base_of,Base,Derived&,false)
-BOOST_TT_AUX_BOOL_TRAIT_PARTIAL_SPEC2_2(typename Base,typename Derived,is_base_of,Base&,Derived&,false)
-#endif
-
-} // namespace boost
-
-#include <boost/type_traits/detail/bool_trait_undef.hpp>
-
-#endif // BOOST_TT_IS_BASE_AND_DERIVED_HPP_INCLUDED

Modified: sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/background.html
==============================================================================
--- sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/background.html (original)
+++ sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/background.html 2011-03-10 16:09:13 EST (Thu, 10 Mar 2011)
@@ -49,7 +49,7 @@
       method available to them.
     </p>
 <a name="boost_typetraits.background.type_traits"></a><h5>
-<a name="id3122162"></a>
+<a name="id3351948"></a>
       <a class="link" href="background.html#boost_typetraits.background.type_traits">Type Traits</a>
     </h5>
 <p>
@@ -77,7 +77,7 @@
       given.
     </p>
 <a name="boost_typetraits.background.implementation"></a><h5>
-<a name="id3121206"></a>
+<a name="id3350991"></a>
       <a class="link" href="background.html#boost_typetraits.background.implementation">Implementation</a>
     </h5>
 <p>
@@ -167,7 +167,7 @@
       in the default template.
     </p>
 <a name="boost_typetraits.background.optimized_copy"></a><h5>
-<a name="id3172690"></a>
+<a name="id3402476"></a>
       <a class="link" href="background.html#boost_typetraits.background.optimized_copy">Optimized copy</a>
     </h5>
 <p>
@@ -240,7 +240,7 @@
       otherwise it will call the "slow but safe version".
     </p>
 <a name="boost_typetraits.background.was_it_worth_it_"></a><h5>
-<a name="id3173153"></a>
+<a name="id3402939"></a>
       <a class="link" href="background.html#boost_typetraits.background.was_it_worth_it_">Was it worth it?</a>
     </h5>
 <p>
@@ -273,7 +273,7 @@
         </li>
 </ul></div>
 <div class="table">
-<a name="id3173221"></a><p class="title"><b>Table&#160;1.1.&#160;Time taken to copy 1000 elements using `copy&lt;const T*, T*&gt;` (times
+<a name="id3403007"></a><p class="title"><b>Table&#160;1.1.&#160;Time taken to copy 1000 elements using `copy&lt;const T*, T*&gt;` (times
       in micro-seconds)</b></p>
 <div class="table-contents"><table class="table" summary="Time taken to copy 1000 elements using `copy&lt;const T*, T*&gt;` (times
       in micro-seconds)">
@@ -372,7 +372,7 @@
 </table></div>
 </div>
 <br class="table-break"><a name="boost_typetraits.background.pair_of_references"></a><h5>
-<a name="id3173373"></a>
+<a name="id3403159"></a>
       <a class="link" href="background.html#boost_typetraits.background.pair_of_references">Pair of References</a>
     </h5>
 <p>
@@ -409,7 +409,7 @@
       to hold non-reference types, references, and constant references:
     </p>
 <div class="table">
-<a name="id3173680"></a><p class="title"><b>Table&#160;1.2.&#160;Required Constructor Argument Types</b></p>
+<a name="id3403466"></a><p class="title"><b>Table&#160;1.2.&#160;Required Constructor Argument Types</b></p>
 <div class="table-contents"><table class="table" summary="Required Constructor Argument Types">
 <colgroup>
 <col>
@@ -474,7 +474,7 @@
       adds a reference to its type, unless it is already a reference.
     </p>
 <div class="table">
-<a name="id3173797"></a><p class="title"><b>Table&#160;1.3.&#160;Using add_reference to synthesize the correct constructor type</b></p>
+<a name="id3403582"></a><p class="title"><b>Table&#160;1.3.&#160;Using add_reference to synthesize the correct constructor type</b></p>
 <div class="table-contents"><table class="table" summary="Using add_reference to synthesize the correct constructor type">
 <colgroup>
 <col>
@@ -590,7 +590,7 @@
       easier to maintain and easier to understand.
     </p>
 <a name="boost_typetraits.background.conclusion"></a><h5>
-<a name="id3174328"></a>
+<a name="id3404114"></a>
       <a class="link" href="background.html#boost_typetraits.background.conclusion">Conclusion</a>
     </h5>
 <p>
@@ -603,7 +603,7 @@
       can be optimal as well as generic.
     </p>
 <a name="boost_typetraits.background.acknowledgements"></a><h5>
-<a name="id3174360"></a>
+<a name="id3404145"></a>
       <a class="link" href="background.html#boost_typetraits.background.acknowledgements">Acknowledgements</a>
     </h5>
 <p>
@@ -611,7 +611,7 @@
       comments when preparing this article.
     </p>
 <a name="background.references"></a><a name="boost_typetraits.background.references"></a><h5>
-<a name="id3174387"></a>
+<a name="id3404172"></a>
       <a class="link" href="background.html#boost_typetraits.background.references">References</a>
     </h5>
 <div class="orderedlist"><ol class="orderedlist" type="1">

Modified: sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/category/transform.html
==============================================================================
--- sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/category/transform.html (original)
+++ sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/category/transform.html 2011-03-10 16:09:13 EST (Thu, 10 Mar 2011)
@@ -90,7 +90,7 @@
 <span class="keyword">struct</span> <a class="link" href="../reference/remove_volatile.html" title="remove_volatile">remove_volatile</a><span class="special">;</span>
 </pre>
 <a name="boost_typetraits.category.transform.broken_compiler_workarounds_"></a><h5>
-<a name="id3189132"></a>
+<a name="id3419063"></a>
         <a class="link" href="transform.html#boost_typetraits.category.transform.broken_compiler_workarounds_">Broken
         Compiler Workarounds:</a>
       </h5>

Modified: sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/category/value_traits/operators.html
==============================================================================
--- sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/category/value_traits/operators.html (original)
+++ sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/category/value_traits/operators.html 2011-03-10 16:09:13 EST (Thu, 10 Mar 2011)
@@ -21,7 +21,7 @@
         Operator Type Traits</a>
 </h4></div></div></div>
 <a name="boost_typetraits.category.value_traits.operators.introduction"></a><h6>
-<a name="id3177000"></a>
+<a name="id3406786"></a>
           <a class="link" href="operators.html#boost_typetraits.category.value_traits.operators.introduction">Introduction</a>
         </h6>
 <p>
@@ -109,7 +109,7 @@
           operators.
         </p>
 <div class="table">
-<a name="id3177836"></a><p class="title"><b>Table&#160;1.4.&#160;Supported binary operators</b></p>
+<a name="id3407621"></a><p class="title"><b>Table&#160;1.4.&#160;Supported binary operators</b></p>
 <div class="table-contents"><table class="table" summary="Supported binary operators">
 <colgroup>
 <col>
@@ -555,7 +555,7 @@
 </table></div>
 </div>
 <br class="table-break"><div class="table">
-<a name="id3180911"></a><p class="title"><b>Table&#160;1.5.&#160;Supported prefix operators</b></p>
+<a name="id3410697"></a><p class="title"><b>Table&#160;1.5.&#160;Supported prefix operators</b></p>
 <div class="table-contents"><table class="table" summary="Supported prefix operators">
 <colgroup>
 <col>
@@ -683,7 +683,7 @@
 </table></div>
 </div>
 <br class="table-break"><div class="table">
-<a name="id3181549"></a><p class="title"><b>Table&#160;1.6.&#160;Supported postfix operators</b></p>
+<a name="id3411335"></a><p class="title"><b>Table&#160;1.6.&#160;Supported postfix operators</b></p>
 <div class="table-contents"><table class="table" summary="Supported postfix operators">
 <colgroup>
 <col>
@@ -742,7 +742,7 @@
           for each operator and the corresponding trait name.
         </p>
 <div class="table">
-<a name="id3181769"></a><p class="title"><b>Table&#160;1.7.&#160;Operator names in the standard</b></p>
+<a name="id3411554"></a><p class="title"><b>Table&#160;1.7.&#160;Operator names in the standard</b></p>
 <div class="table-contents"><table class="table" summary="Operator names in the standard">
 <colgroup>
 <col>
@@ -1645,7 +1645,7 @@
 </table></div>
 </div>
 <br class="table-break"><a name="boost_typetraits.category.value_traits.operators.implementation"></a><h6>
-<a name="id3184298"></a>
+<a name="id3414084"></a>
           <a class="link" href="operators.html#boost_typetraits.category.value_traits.operators.implementation">Implementation</a>
         </h6>
 <p>
@@ -1794,8 +1794,10 @@
 <span class="comment">// defines some typedef for convenience
 </span><span class="keyword">template</span> <span class="special">&lt;</span> <span class="keyword">typename</span> <span class="identifier">RHS</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">RET</span> <span class="special">&gt;</span>
 <span class="keyword">struct</span> <span class="identifier">has_operator_unary_minus_impl</span> <span class="special">{</span>
- <span class="keyword">typedef</span> <span class="keyword">typename</span> <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">remove_reference</span><span class="special">&lt;</span><span class="identifier">RHS</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">rhs_noref</span><span class="special">;</span>
+ <span class="comment">// shortcuts for writing forbidden_if
+</span> <span class="keyword">typedef</span> <span class="keyword">typename</span> <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">remove_reference</span><span class="special">&lt;</span><span class="identifier">RHS</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">rhs_noref</span><span class="special">;</span>
    <span class="keyword">typedef</span> <span class="keyword">typename</span> <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">remove_cv</span><span class="special">&lt;</span><span class="identifier">rhs_noref</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">rhs_nocv</span><span class="special">;</span>
+ <span class="keyword">typedef</span> <span class="keyword">typename</span> <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">remove_cv</span><span class="special">&lt;</span> <span class="keyword">typename</span> <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">remove_reference</span><span class="special">&lt;</span> <span class="keyword">typename</span> <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">remove_pointer</span><span class="special">&lt;</span><span class="identifier">rhs_noref</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="special">&gt;::</span><span class="identifier">type</span> <span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">rhs_noptr</span><span class="special">;</span>
    <span class="keyword">static</span> <span class="keyword">const</span> <span class="keyword">bool</span> <span class="identifier">value</span><span class="special">=(</span><span class="identifier">has_operator_unary_minus_impl1</span> <span class="special">&lt;</span> <span class="identifier">rhs_noref</span><span class="special">,</span> <span class="identifier">RET</span><span class="special">,</span> <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">is_pointer</span><span class="special">&lt;</span> <span class="identifier">rhs_noref</span> <span class="special">&gt;::</span><span class="identifier">value</span> <span class="special">&gt;::</span><span class="identifier">value</span><span class="special">);</span>
 <span class="special">};</span>
 <span class="special">}</span> <span class="comment">// namespace has_operator_unary_minus_impl
@@ -1810,7 +1812,7 @@
 <p>
         </p>
 <a name="boost_typetraits.category.value_traits.operators.known_issues"></a><h6>
-<a name="id3187497"></a>
+<a name="id3417429"></a>
           <a class="link" href="operators.html#boost_typetraits.category.value_traits.operators.known_issues">Known
           issues</a>
         </h6>
@@ -1863,7 +1865,7 @@
 <p>
         </p>
 <a name="boost_typetraits.category.value_traits.operators.acknowledgments"></a><h6>
-<a name="id3188130"></a>
+<a name="id3418061"></a>
           <a class="link" href="operators.html#boost_typetraits.category.value_traits.operators.acknowledgments">Acknowledgments</a>
         </h6>
 <p>

Modified: sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/intrinsics.html
==============================================================================
--- sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/intrinsics.html (original)
+++ sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/intrinsics.html 2011-03-10 16:09:13 EST (Thu, 10 Mar 2011)
@@ -92,7 +92,7 @@
       of the following macros:
     </p>
 <div class="table">
-<a name="id3191211"></a><p class="title"><b>Table&#160;1.8.&#160;Macros for Compiler Intrinsics</b></p>
+<a name="id3421143"></a><p class="title"><b>Table&#160;1.8.&#160;Macros for Compiler Intrinsics</b></p>
 <div class="table-contents"><table class="table" summary="Macros for Compiler Intrinsics">
 <colgroup>
 <col>

Modified: sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/add_const.html
==============================================================================
--- sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/add_const.html (original)
+++ sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/add_const.html 2011-03-10 16:09:13 EST (Thu, 10 Mar 2011)
@@ -46,7 +46,7 @@
         or <code class="computeroutput"> <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">hpp</span><span class="special">&gt;</span></code>
       </p>
 <div class="table">
-<a name="id3196010"></a><p class="title"><b>Table&#160;1.9.&#160;Examples</b></p>
+<a name="id3425942"></a><p class="title"><b>Table&#160;1.9.&#160;Examples</b></p>
 <div class="table-contents"><table class="table" summary="Examples">
 <colgroup>
 <col>

Modified: sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/add_cv.html
==============================================================================
--- sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/add_cv.html (original)
+++ sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/add_cv.html 2011-03-10 16:09:13 EST (Thu, 10 Mar 2011)
@@ -47,7 +47,7 @@
         or <code class="computeroutput"> <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">hpp</span><span class="special">&gt;</span></code>
       </p>
 <div class="table">
-<a name="id3196594"></a><p class="title"><b>Table&#160;1.10.&#160;Examples</b></p>
+<a name="id3426525"></a><p class="title"><b>Table&#160;1.10.&#160;Examples</b></p>
 <div class="table-contents"><table class="table" summary="Examples">
 <colgroup>
 <col>

Modified: sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/add_pointer.html
==============================================================================
--- sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/add_pointer.html (original)
+++ sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/add_pointer.html 2011-03-10 16:09:13 EST (Thu, 10 Mar 2011)
@@ -49,7 +49,7 @@
         or <code class="computeroutput"> <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">hpp</span><span class="special">&gt;</span></code>
       </p>
 <div class="table">
-<a name="id3197246"></a><p class="title"><b>Table&#160;1.11.&#160;Examples</b></p>
+<a name="id3427178"></a><p class="title"><b>Table&#160;1.11.&#160;Examples</b></p>
 <div class="table-contents"><table class="table" summary="Examples">
 <colgroup>
 <col>

Modified: sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/add_reference.html
==============================================================================
--- sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/add_reference.html (original)
+++ sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/add_reference.html 2011-03-10 16:09:13 EST (Thu, 10 Mar 2011)
@@ -46,7 +46,7 @@
         or <code class="computeroutput"> <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">hpp</span><span class="special">&gt;</span></code>
       </p>
 <div class="table">
-<a name="id3197832"></a><p class="title"><b>Table&#160;1.12.&#160;Examples</b></p>
+<a name="id3427764"></a><p class="title"><b>Table&#160;1.12.&#160;Examples</b></p>
 <div class="table-contents"><table class="table" summary="Examples">
 <colgroup>
 <col>

Modified: sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/add_volatile.html
==============================================================================
--- sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/add_volatile.html (original)
+++ sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/add_volatile.html 2011-03-10 16:09:13 EST (Thu, 10 Mar 2011)
@@ -46,7 +46,7 @@
         or <code class="computeroutput"> <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">hpp</span><span class="special">&gt;</span></code>
       </p>
 <div class="table">
-<a name="id3198409"></a><p class="title"><b>Table&#160;1.13.&#160;Examples</b></p>
+<a name="id3428341"></a><p class="title"><b>Table&#160;1.13.&#160;Examples</b></p>
 <div class="table-contents"><table class="table" summary="Examples">
 <colgroup>
 <col>

Modified: sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/decay.html
==============================================================================
--- sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/decay.html (original)
+++ sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/decay.html 2011-03-10 16:09:13 EST (Thu, 10 Mar 2011)
@@ -41,7 +41,7 @@
         or <code class="computeroutput"> <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">hpp</span><span class="special">&gt;</span></code>
       </p>
 <div class="table">
-<a name="id3199907"></a><p class="title"><b>Table&#160;1.14.&#160;Examples</b></p>
+<a name="id3429839"></a><p class="title"><b>Table&#160;1.14.&#160;Examples</b></p>
 <div class="table-contents"><table class="table" summary="Examples">
 <colgroup>
 <col>

Modified: sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/floating_point_promotion.html
==============================================================================
--- sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/floating_point_promotion.html (original)
+++ sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/floating_point_promotion.html 2011-03-10 16:09:13 EST (Thu, 10 Mar 2011)
@@ -42,7 +42,7 @@
         or <code class="computeroutput"> <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">hpp</span><span class="special">&gt;</span></code>
       </p>
 <div class="table">
-<a name="id3201516"></a><p class="title"><b>Table&#160;1.15.&#160;Examples</b></p>
+<a name="id3431448"></a><p class="title"><b>Table&#160;1.15.&#160;Examples</b></p>
 <div class="table-contents"><table class="table" summary="Examples">
 <colgroup>
 <col>

Modified: sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/function_traits.html
==============================================================================
--- sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/function_traits.html (original)
+++ sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/function_traits.html 2011-03-10 16:09:13 EST (Thu, 10 Mar 2011)
@@ -52,7 +52,7 @@
         </p></td></tr>
 </table></div>
 <div class="table">
-<a name="id3201961"></a><p class="title"><b>Table&#160;1.16.&#160;Function Traits Members</b></p>
+<a name="id3431893"></a><p class="title"><b>Table&#160;1.16.&#160;Function Traits Members</b></p>
 <div class="table-contents"><table class="table" summary="Function Traits Members">
 <colgroup>
 <col>
@@ -115,7 +115,7 @@
 </table></div>
 </div>
 <br class="table-break"><div class="table">
-<a name="id3202219"></a><p class="title"><b>Table&#160;1.17.&#160;Examples</b></p>
+<a name="id3432150"></a><p class="title"><b>Table&#160;1.17.&#160;Examples</b></p>
 <div class="table-contents"><table class="table" summary="Examples">
 <colgroup>
 <col>

Modified: sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/integral_promotion.html
==============================================================================
--- sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/integral_promotion.html (original)
+++ sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/integral_promotion.html 2011-03-10 16:09:13 EST (Thu, 10 Mar 2011)
@@ -42,7 +42,7 @@
         or <code class="computeroutput"> <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">hpp</span><span class="special">&gt;</span></code>
       </p>
 <div class="table">
-<a name="id3268220"></a><p class="title"><b>Table&#160;1.18.&#160;Examples</b></p>
+<a name="id3498152"></a><p class="title"><b>Table&#160;1.18.&#160;Examples</b></p>
 <div class="table-contents"><table class="table" summary="Examples">
 <colgroup>
 <col>

Modified: sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/make_signed.html
==============================================================================
--- sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/make_signed.html (original)
+++ sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/make_signed.html 2011-03-10 16:09:13 EST (Thu, 10 Mar 2011)
@@ -47,7 +47,7 @@
         or <code class="computeroutput"> <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">hpp</span><span class="special">&gt;</span></code>
       </p>
 <div class="table">
-<a name="id3286138"></a><p class="title"><b>Table&#160;1.19.&#160;Examples</b></p>
+<a name="id3516070"></a><p class="title"><b>Table&#160;1.19.&#160;Examples</b></p>
 <div class="table-contents"><table class="table" summary="Examples">
 <colgroup>
 <col>

Modified: sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/make_unsigned.html
==============================================================================
--- sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/make_unsigned.html (original)
+++ sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/make_unsigned.html 2011-03-10 16:09:13 EST (Thu, 10 Mar 2011)
@@ -47,7 +47,7 @@
         or <code class="computeroutput"> <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">hpp</span><span class="special">&gt;</span></code>
       </p>
 <div class="table">
-<a name="id3286718"></a><p class="title"><b>Table&#160;1.20.&#160;Examples</b></p>
+<a name="id3516650"></a><p class="title"><b>Table&#160;1.20.&#160;Examples</b></p>
 <div class="table-contents"><table class="table" summary="Examples">
 <colgroup>
 <col>

Modified: sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/member_object.html
==============================================================================
--- sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/member_object.html (original)
+++ sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/member_object.html 2011-03-10 16:09:13 EST (Thu, 10 Mar 2011)
@@ -44,7 +44,7 @@
         or <code class="computeroutput"> <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">hpp</span><span class="special">&gt;</span></code>
       </p>
 <div class="table">
-<a name="id3287323"></a><p class="title"><b>Table&#160;1.21.&#160;Examples</b></p>
+<a name="id3517254"></a><p class="title"><b>Table&#160;1.21.&#160;Examples</b></p>
 <div class="table-contents"><table class="table" summary="Examples">
 <colgroup>
 <col>

Modified: sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/promote.html
==============================================================================
--- sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/promote.html (original)
+++ sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/promote.html 2011-03-10 16:09:13 EST (Thu, 10 Mar 2011)
@@ -44,7 +44,7 @@
         or <code class="computeroutput"> <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">hpp</span><span class="special">&gt;</span></code>
       </p>
 <div class="table">
-<a name="id3288082"></a><p class="title"><b>Table&#160;1.22.&#160;Examples</b></p>
+<a name="id3518014"></a><p class="title"><b>Table&#160;1.22.&#160;Examples</b></p>
 <div class="table-contents"><table class="table" summary="Examples">
 <colgroup>
 <col>

Modified: sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/remove_all_extents.html
==============================================================================
--- sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/remove_all_extents.html (original)
+++ sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/remove_all_extents.html 2011-03-10 16:09:13 EST (Thu, 10 Mar 2011)
@@ -47,7 +47,7 @@
         or <code class="computeroutput"> <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">hpp</span><span class="special">&gt;</span></code>
       </p>
 <div class="table">
-<a name="id3289369"></a><p class="title"><b>Table&#160;1.23.&#160;Examples</b></p>
+<a name="id3519301"></a><p class="title"><b>Table&#160;1.23.&#160;Examples</b></p>
 <div class="table-contents"><table class="table" summary="Examples">
 <colgroup>
 <col>

Modified: sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/remove_const.html
==============================================================================
--- sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/remove_const.html (original)
+++ sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/remove_const.html 2011-03-10 16:09:13 EST (Thu, 10 Mar 2011)
@@ -46,7 +46,7 @@
         or <code class="computeroutput"> <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">hpp</span><span class="special">&gt;</span></code>
       </p>
 <div class="table">
-<a name="id3290031"></a><p class="title"><b>Table&#160;1.24.&#160;Examples</b></p>
+<a name="id3519963"></a><p class="title"><b>Table&#160;1.24.&#160;Examples</b></p>
 <div class="table-contents"><table class="table" summary="Examples">
 <colgroup>
 <col>

Modified: sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/remove_cv.html
==============================================================================
--- sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/remove_cv.html (original)
+++ sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/remove_cv.html 2011-03-10 16:09:13 EST (Thu, 10 Mar 2011)
@@ -46,7 +46,7 @@
         or <code class="computeroutput"> <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">hpp</span><span class="special">&gt;</span></code>
       </p>
 <div class="table">
-<a name="id3290676"></a><p class="title"><b>Table&#160;1.25.&#160;Examples</b></p>
+<a name="id3520608"></a><p class="title"><b>Table&#160;1.25.&#160;Examples</b></p>
 <div class="table-contents"><table class="table" summary="Examples">
 <colgroup>
 <col>

Modified: sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/remove_extent.html
==============================================================================
--- sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/remove_extent.html (original)
+++ sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/remove_extent.html 2011-03-10 16:09:13 EST (Thu, 10 Mar 2011)
@@ -47,7 +47,7 @@
         or <code class="computeroutput"> <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">hpp</span><span class="special">&gt;</span></code>
       </p>
 <div class="table">
-<a name="id3291323"></a><p class="title"><b>Table&#160;1.26.&#160;Examples</b></p>
+<a name="id3521255"></a><p class="title"><b>Table&#160;1.26.&#160;Examples</b></p>
 <div class="table-contents"><table class="table" summary="Examples">
 <colgroup>
 <col>

Modified: sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/remove_member_pointer.html
==============================================================================
--- sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/remove_member_pointer.html (original)
+++ sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/remove_member_pointer.html 2011-03-10 16:09:13 EST (Thu, 10 Mar 2011)
@@ -42,7 +42,7 @@
         or <code class="computeroutput"> <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">hpp</span><span class="special">&gt;</span></code>
       </p>
 <div class="table">
-<a name="id3292591"></a><p class="title"><b>Table&#160;1.28.&#160;Examples</b></p>
+<a name="id3522523"></a><p class="title"><b>Table&#160;1.28.&#160;Examples</b></p>
 <div class="table-contents"><table class="table" summary="Examples">
 <colgroup>
 <col>

Modified: sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/remove_pointer.html
==============================================================================
--- sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/remove_pointer.html (original)
+++ sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/remove_pointer.html 2011-03-10 16:09:13 EST (Thu, 10 Mar 2011)
@@ -46,7 +46,7 @@
         or <code class="computeroutput"> <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">hpp</span><span class="special">&gt;</span></code>
       </p>
 <div class="table">
-<a name="id3291998"></a><p class="title"><b>Table&#160;1.27.&#160;Examples</b></p>
+<a name="id3521930"></a><p class="title"><b>Table&#160;1.27.&#160;Examples</b></p>
 <div class="table-contents"><table class="table" summary="Examples">
 <colgroup>
 <col>

Modified: sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/remove_reference.html
==============================================================================
--- sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/remove_reference.html (original)
+++ sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/remove_reference.html 2011-03-10 16:09:13 EST (Thu, 10 Mar 2011)
@@ -46,7 +46,7 @@
         or <code class="computeroutput"> <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">hpp</span><span class="special">&gt;</span></code>
       </p>
 <div class="table">
-<a name="id3293380"></a><p class="title"><b>Table&#160;1.29.&#160;Examples</b></p>
+<a name="id3523312"></a><p class="title"><b>Table&#160;1.29.&#160;Examples</b></p>
 <div class="table-contents"><table class="table" summary="Examples">
 <colgroup>
 <col>

Modified: sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/remove_volatile.html
==============================================================================
--- sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/remove_volatile.html (original)
+++ sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/reference/remove_volatile.html 2011-03-10 16:09:13 EST (Thu, 10 Mar 2011)
@@ -46,7 +46,7 @@
         or <code class="computeroutput"> <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">hpp</span><span class="special">&gt;</span></code>
       </p>
 <div class="table">
-<a name="id3293936"></a><p class="title"><b>Table&#160;1.30.&#160;Examples</b></p>
+<a name="id3523868"></a><p class="title"><b>Table&#160;1.30.&#160;Examples</b></p>
 <div class="table-contents"><table class="table" summary="Examples">
 <colgroup>
 <col>

Modified: sandbox/type_traits/libs/type_traits/doc/html/index.html
==============================================================================
--- sandbox/type_traits/libs/type_traits/doc/html/index.html (original)
+++ sandbox/type_traits/libs/type_traits/doc/html/index.html 2011-03-10 16:09:13 EST (Thu, 10 Mar 2011)
@@ -24,7 +24,7 @@
       Ottosen, Roman Perepelitsa, Robert Ramey, Jeremy Siek, Robert Stewart and Steven
       Watanabe</p></div>
 <div><div class="legalnotice">
-<a name="id3162579"></a><p>
+<a name="id3392365"></a><p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>

Modified: sandbox/type_traits/libs/type_traits/doc/operators.qbk
==============================================================================
--- sandbox/type_traits/libs/type_traits/doc/operators.qbk (original)
+++ sandbox/type_traits/libs/type_traits/doc/operators.qbk 2011-03-10 16:09:13 EST (Thu, 10 Mar 2011)
@@ -309,8 +309,10 @@
 // defines some typedef for convenience
 template < typename RHS, typename RET >
 struct has_operator_unary_minus_impl {
+ // shortcuts for writing forbidden_if
    typedef typename ::boost::remove_reference<RHS>::type rhs_noref;
    typedef typename ::boost::remove_cv<rhs_noref>::type rhs_nocv;
+ typedef typename ::boost::remove_cv< typename ::boost::remove_reference< typename ::boost::remove_pointer<rhs_noref>::type >::type >::type rhs_noptr;
    static const bool value=(has_operator_unary_minus_impl1 < rhs_noref, RET, ::boost::is_pointer< rhs_noref >::value >::value);
 };
 } // namespace has_operator_unary_minus_impl


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