Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r81829 - in branches/release: boost boost/type_traits libs/type_traits libs/type_traits/test
From: john_at_[hidden]
Date: 2012-12-10 13:11:46


Author: johnmaddock
Date: 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
New Revision: 81829
URL: http://svn.boost.org/trac/boost/changeset/81829

Log:
Merge changes from Trunk.
Properties modified:
   branches/release/boost/type_traits/ (props changed)
   branches/release/boost/type_traits.hpp (props changed)
   branches/release/libs/type_traits/ (props changed)
Text files modified:
   branches/release/boost/type_traits/add_lvalue_reference.hpp | 2
   branches/release/boost/type_traits/add_reference.hpp | 2
   branches/release/boost/type_traits/add_rvalue_reference.hpp | 8 +-
   branches/release/boost/type_traits/common_type.hpp | 22 ++++----
   branches/release/boost/type_traits/intrinsics.hpp | 7 ++
   branches/release/boost/type_traits/is_const.hpp | 2
   branches/release/boost/type_traits/is_convertible.hpp | 93 +++++++++++++++++++++++++++++++++------
   branches/release/boost/type_traits/is_function.hpp | 7 ++
   branches/release/boost/type_traits/is_integral.hpp | 5 ++
   branches/release/boost/type_traits/is_rvalue_reference.hpp | 2
   branches/release/boost/type_traits/is_volatile.hpp | 2
   branches/release/boost/type_traits/make_signed.hpp | 16 ++++++
   branches/release/boost/type_traits/make_unsigned.hpp | 16 ++++++
   branches/release/boost/type_traits/remove_const.hpp | 2
   branches/release/boost/type_traits/remove_cv.hpp | 2
   branches/release/boost/type_traits/remove_reference.hpp | 2
   branches/release/boost/type_traits/remove_volatile.hpp | 2
   branches/release/libs/type_traits/test/add_const_test.cpp | 4
   branches/release/libs/type_traits/test/add_cv_test.cpp | 4
   branches/release/libs/type_traits/test/add_lvalue_reference_test.cpp | 4
   branches/release/libs/type_traits/test/add_reference_test.cpp | 4
   branches/release/libs/type_traits/test/add_rvalue_reference_test.cpp | 4
   branches/release/libs/type_traits/test/add_volatile_test.cpp | 4
   branches/release/libs/type_traits/test/common_type_2_test.cpp | 2
   branches/release/libs/type_traits/test/common_type_test.cpp | 2
   branches/release/libs/type_traits/test/extent_test.cpp | 2
   branches/release/libs/type_traits/test/has_nothrow_assign_test.cpp | 2
   branches/release/libs/type_traits/test/has_nothrow_constr_test.cpp | 2
   branches/release/libs/type_traits/test/has_nothrow_copy_test.cpp | 2
   branches/release/libs/type_traits/test/has_operator_new_test.cpp | 2
   branches/release/libs/type_traits/test/has_trivial_assign_test.cpp | 2
   branches/release/libs/type_traits/test/has_trivial_constr_test.cpp | 2
   branches/release/libs/type_traits/test/has_trivial_copy_test.cpp | 2
   branches/release/libs/type_traits/test/has_virtual_destructor_test.cpp | 2
   branches/release/libs/type_traits/test/is_abstract_test.cpp | 2
   branches/release/libs/type_traits/test/is_arithmetic_test.cpp | 2
   branches/release/libs/type_traits/test/is_array_test.cpp | 2
   branches/release/libs/type_traits/test/is_class_test.cpp | 2
   branches/release/libs/type_traits/test/is_const_test.cpp | 2
   branches/release/libs/type_traits/test/is_convertible_test.cpp | 11 +++-
   branches/release/libs/type_traits/test/is_empty_test.cpp | 2
   branches/release/libs/type_traits/test/is_enum_test.cpp | 6 +-
   branches/release/libs/type_traits/test/is_float_test.cpp | 2
   branches/release/libs/type_traits/test/is_floating_point_test.cpp | 2
   branches/release/libs/type_traits/test/is_function_test.cpp | 2
   branches/release/libs/type_traits/test/is_fundamental_test.cpp | 2
   branches/release/libs/type_traits/test/is_integral_test.cpp | 14 +++++
   branches/release/libs/type_traits/test/is_lvalue_reference_test.cpp | 2
   branches/release/libs/type_traits/test/is_object_test.cpp | 2
   branches/release/libs/type_traits/test/is_pod_test.cpp | 2
   branches/release/libs/type_traits/test/is_pointer_test.cpp | 2
   branches/release/libs/type_traits/test/is_polymorphic_test.cpp | 2
   branches/release/libs/type_traits/test/is_reference_test.cpp | 2
   branches/release/libs/type_traits/test/is_rvalue_reference_test.cpp | 2
   branches/release/libs/type_traits/test/is_same_test.cpp | 4
   branches/release/libs/type_traits/test/is_scalar_test.cpp | 2
   branches/release/libs/type_traits/test/is_signed_test.cpp | 6 ++
   branches/release/libs/type_traits/test/is_stateless_test.cpp | 2
   branches/release/libs/type_traits/test/is_union_test.cpp | 2
   branches/release/libs/type_traits/test/is_unsigned_test.cpp | 7 ++
   branches/release/libs/type_traits/test/is_void_test.cpp | 2
   branches/release/libs/type_traits/test/is_volatile_test.cpp | 2
   branches/release/libs/type_traits/test/make_signed_test.cpp | 4 +
   branches/release/libs/type_traits/test/make_unsigned_test.cpp | 4 +
   branches/release/libs/type_traits/test/rank_test.cpp | 2
   branches/release/libs/type_traits/test/remove_all_extents_test.cpp | 4
   branches/release/libs/type_traits/test/remove_bounds_test.cpp | 4
   branches/release/libs/type_traits/test/remove_cv_test.cpp | 4
   branches/release/libs/type_traits/test/remove_extent_test.cpp | 4
   branches/release/libs/type_traits/test/remove_pointer_test.cpp | 4
   branches/release/libs/type_traits/test/remove_reference_test.cpp | 4
   branches/release/libs/type_traits/test/test.hpp | 2
   branches/release/libs/type_traits/test/tricky_add_pointer_test.cpp | 4
   branches/release/libs/type_traits/test/tricky_function_type_test.cpp | 7 +++
   branches/release/libs/type_traits/test/tricky_partial_spec_test.cpp | 2
   branches/release/libs/type_traits/test/tricky_rvalue_test.cpp | 6 ++
   76 files changed, 268 insertions(+), 117 deletions(-)

Modified: branches/release/boost/type_traits/add_lvalue_reference.hpp
==============================================================================
--- branches/release/boost/type_traits/add_lvalue_reference.hpp (original)
+++ branches/release/boost/type_traits/add_lvalue_reference.hpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -15,7 +15,7 @@
 
 BOOST_TT_AUX_TYPE_TRAIT_DEF1(add_lvalue_reference,T,typename boost::add_reference<T>::type)
 
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
 BOOST_TT_AUX_TYPE_TRAIT_PARTIAL_SPEC1_1(typename T,add_lvalue_reference,T&&,T&)
 #endif
 

Modified: branches/release/boost/type_traits/add_reference.hpp
==============================================================================
--- branches/release/boost/type_traits/add_reference.hpp (original)
+++ branches/release/boost/type_traits/add_reference.hpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -62,7 +62,7 @@
     typedef T& type;
 };
 
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
 template <typename T>
 struct add_reference_rvalue_layer<T&&>
 {

Modified: branches/release/boost/type_traits/add_rvalue_reference.hpp
==============================================================================
--- branches/release/boost/type_traits/add_rvalue_reference.hpp (original)
+++ branches/release/boost/type_traits/add_rvalue_reference.hpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -21,7 +21,7 @@
 //----------------------------------------------------------------------------//
 // //
 // C++03 implementation of //
-// 20.7.6.2 Reference modifications [meta.trans.ref] //
+// 20.9.7.2 Reference modifications [meta.trans.ref] //
 // Written by Vicente J. Botet Escriba //
 // //
 // If T names an object or function type then the member typedef type
@@ -39,7 +39,7 @@
     struct add_rvalue_reference_helper
     { typedef T type; };
 
-#if !defined(BOOST_NO_RVALUE_REFERENCES) && !defined(BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION)
+#if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES) && !defined(BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION)
     template <typename T>
     struct add_rvalue_reference_helper<T, true>
     {
@@ -49,9 +49,9 @@
 
     template <typename T>
     struct add_rvalue_reference_imp
- {
+ {
        typedef typename boost::type_traits_detail::add_rvalue_reference_helper
- <T, (!is_void<T>::value && !is_reference<T>::value) >::type type;
+ <T, (is_void<T>::value == false && is_reference<T>::value == false) >::type type;
     };
 
 }

Modified: branches/release/boost/type_traits/common_type.hpp
==============================================================================
--- branches/release/boost/type_traits/common_type.hpp (original)
+++ branches/release/boost/type_traits/common_type.hpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -19,18 +19,18 @@
 #endif
 
 //----------------------------------------------------------------------------//
-#if defined(BOOST_NO_VARIADIC_TEMPLATES) && !defined(BOOST_COMMON_TYPE_ARITY)
+#if defined(BOOST_NO_CXX11_VARIADIC_TEMPLATES) && !defined(BOOST_COMMON_TYPE_ARITY)
 #define BOOST_COMMON_TYPE_ARITY 3
 #endif
 
 //----------------------------------------------------------------------------//
-#if defined(BOOST_NO_DECLTYPE) && !defined(BOOST_COMMON_TYPE_DONT_USE_TYPEOF) && !defined(BOOST_TYPEOF_SILENT)
+#if defined(BOOST_NO_CXX11_DECLTYPE) && !defined(BOOST_COMMON_TYPE_DONT_USE_TYPEOF) && !defined(BOOST_TYPEOF_SILENT)
 #define BOOST_TYPEOF_SILENT
 #include <boost/typeof/typeof.hpp> // boost wonders never cease!
 #endif
 
 //----------------------------------------------------------------------------//
-#ifndef BOOST_NO_STATIC_ASSERT
+#ifndef BOOST_NO_CXX11_STATIC_ASSERT
 #define BOOST_COMMON_TYPE_STATIC_ASSERT(CND, MSG, TYPES) static_assert(CND,MSG)
 #elif defined(BOOST_COMMON_TYPE_USES_MPL_ASSERT)
 #include <boost/mpl/assert.hpp>
@@ -42,11 +42,11 @@
 #define BOOST_COMMON_TYPE_STATIC_ASSERT(CND, MSG, TYPES) BOOST_STATIC_ASSERT(CND)
 #endif
 
-#if !defined(BOOST_NO_STATIC_ASSERT) || !defined(BOOST_COMMON_TYPE_USES_MPL_ASSERT)
+#if !defined(BOOST_NO_CXX11_STATIC_ASSERT) || !defined(BOOST_COMMON_TYPE_USES_MPL_ASSERT)
 #define BOOST_COMMON_TYPE_MUST_BE_A_COMPLE_TYPE "must be complete type"
 #endif
 
-#if defined(BOOST_NO_DECLTYPE) && defined(BOOST_COMMON_TYPE_DONT_USE_TYPEOF)
+#if defined(BOOST_NO_CXX11_DECLTYPE) && defined(BOOST_COMMON_TYPE_DONT_USE_TYPEOF)
 #include <boost/type_traits/detail/common_type_imp.hpp>
 #include <boost/type_traits/remove_cv.hpp>
 #endif
@@ -57,7 +57,7 @@
 //----------------------------------------------------------------------------//
 // //
 // C++03 implementation of //
-// 20.6.7 Other transformations [meta.trans.other] //
+// 20.9.7.6 Other transformations [meta.trans.other] //
 // Written by Howard Hinnant //
 // Adapted for Boost by Beman Dawes, Vicente Botet and Jeffrey Hellrung //
 // //
@@ -66,7 +66,7 @@
 namespace boost {
 
 // prototype
-#if !defined(BOOST_NO_VARIADIC_TEMPLATES)
+#if !defined(BOOST_NO_CXX11_VARIADIC_TEMPLATES)
     template<typename... T>
     struct common_type;
 #else // or no specialization
@@ -81,7 +81,7 @@
 
 // 1 arg
     template<typename T>
-#if !defined(BOOST_NO_VARIADIC_TEMPLATES)
+#if !defined(BOOST_NO_CXX11_VARIADIC_TEMPLATES)
     struct common_type<T>
 #else
     struct common_type<T, void, void>
@@ -107,7 +107,7 @@
         static typename add_rvalue_reference<U>::type declval_U(); // workaround gcc bug; not required by std
         static typename add_rvalue_reference<bool>::type declval_b();
 
-#if !defined(BOOST_NO_DECLTYPE)
+#if !defined(BOOST_NO_CXX11_DECLTYPE)
     public:
         typedef decltype(declval<bool>() ? declval<T>() : declval<U>()) type;
 #elif defined(BOOST_COMMON_TYPE_DONT_USE_TYPEOF)
@@ -134,7 +134,7 @@
     };
     }
 
-#if !defined(BOOST_NO_VARIADIC_TEMPLATES)
+#if !defined(BOOST_NO_CXX11_VARIADIC_TEMPLATES)
     template <class T, class U>
     struct common_type<T, U>
 #else
@@ -146,7 +146,7 @@
 
 
 // 3 or more args
-#if !defined(BOOST_NO_VARIADIC_TEMPLATES)
+#if !defined(BOOST_NO_CXX11_VARIADIC_TEMPLATES)
     template<typename T, typename U, typename... V>
     struct common_type<T, U, V...> {
     public:

Modified: branches/release/boost/type_traits/intrinsics.hpp
==============================================================================
--- branches/release/boost/type_traits/intrinsics.hpp (original)
+++ branches/release/boost/type_traits/intrinsics.hpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -79,8 +79,10 @@
 # define BOOST_HAS_TYPE_TRAITS_INTRINSICS
 #endif
 
-#if defined(BOOST_MSVC) && defined(BOOST_MSVC_FULL_VER) && (BOOST_MSVC_FULL_VER >=140050215)
+#if (defined(BOOST_MSVC) && defined(BOOST_MSVC_FULL_VER) && (BOOST_MSVC_FULL_VER >=140050215))\
+ || (defined(BOOST_INTEL) && defined(_MSC_VER) && (_MSC_VER >= 1500))
 # include <boost/type_traits/is_same.hpp>
+# include <boost/type_traits/is_function.hpp>
 
 # define BOOST_IS_UNION(T) __is_union(T)
 # define BOOST_IS_POD(T) (__is_pod(T) && __has_trivial_constructor(T))
@@ -97,7 +99,7 @@
 # define BOOST_IS_ABSTRACT(T) __is_abstract(T)
 # define BOOST_IS_BASE_OF(T,U) (__is_base_of(T,U) && !is_same<T,U>::value)
 # define BOOST_IS_CLASS(T) __is_class(T)
-# define BOOST_IS_CONVERTIBLE(T,U) ((__is_convertible_to(T,U) || is_same<T,U>::value) && !__is_abstract(U))
+# define BOOST_IS_CONVERTIBLE(T,U) ((__is_convertible_to(T,U) || (is_same<T,U>::value && !is_function<U>::value)) && !__is_abstract(U))
 # define BOOST_IS_ENUM(T) __is_enum(T)
 // This one doesn't quite always do the right thing:
 // # define BOOST_IS_POLYMORPHIC(T) __is_polymorphic(T)
@@ -287,3 +289,4 @@
 
 
 
+

Modified: branches/release/boost/type_traits/is_const.hpp
==============================================================================
--- branches/release/boost/type_traits/is_const.hpp (original)
+++ branches/release/boost/type_traits/is_const.hpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -64,7 +64,7 @@
    BOOST_STATIC_CONSTANT(bool, value = ::boost::detail::cv_traits_imp<T*>::is_const);
 #endif
 };
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
 template <class T>
 struct is_const_rvalue_filter<T&&>
 {

Modified: branches/release/boost/type_traits/is_convertible.hpp
==============================================================================
--- branches/release/boost/type_traits/is_convertible.hpp (original)
+++ branches/release/boost/type_traits/is_convertible.hpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -17,17 +17,17 @@
 #include <boost/type_traits/detail/yes_no_type.hpp>
 #include <boost/type_traits/config.hpp>
 #include <boost/type_traits/is_array.hpp>
-#include <boost/type_traits/add_reference.hpp>
 #include <boost/type_traits/ice.hpp>
 #include <boost/type_traits/is_arithmetic.hpp>
 #include <boost/type_traits/is_void.hpp>
 #ifndef BOOST_NO_IS_ABSTRACT
 #include <boost/type_traits/is_abstract.hpp>
 #endif
+#include <boost/type_traits/add_lvalue_reference.hpp>
 #include <boost/type_traits/add_rvalue_reference.hpp>
+#include <boost/type_traits/is_function.hpp>
 
 #if defined(__MWERKS__)
-#include <boost/type_traits/is_function.hpp>
 #include <boost/type_traits/remove_reference.hpp>
 #endif
 
@@ -69,7 +69,7 @@
     {
         static no_type BOOST_TT_DECL _m_check(...);
         static yes_type BOOST_TT_DECL _m_check(To);
- static typename add_rvalue_reference<From>::type _m_from;
+ static typename add_lvalue_reference<From>::type _m_from;
         enum { value = sizeof( _m_check(_m_from) ) == sizeof(yes_type) };
     };
 };
@@ -107,7 +107,7 @@
         static ::boost::type_traits::yes_type BOOST_TT_DECL _m_check(T);
     };
 
- static typename add_rvalue_reference<From>::type _m_from;
+ static typename add_lvalue_reference<From>::type _m_from;
     static bool const value = sizeof( checker<To>::_m_check(_m_from) )
         == sizeof(::boost::type_traits::yes_type);
 #pragma option pop
@@ -120,6 +120,8 @@
 struct any_conversion
 {
     template <typename T> any_conversion(const volatile T&);
+ template <typename T> any_conversion(const T&);
+ template <typename T> any_conversion(volatile T&);
     template <typename T> any_conversion(T&);
 };
 
@@ -132,9 +134,18 @@
 template <typename From, typename To>
 struct is_convertible_basic_impl
 {
- static typename add_rvalue_reference<From>::type _m_from;
- static bool const value = sizeof( boost::detail::checker<To>::_m_check(_m_from, 0) )
+ typedef typename add_lvalue_reference<From>::type lvalue_type;
+ typedef typename add_rvalue_reference<From>::type rvalue_type;
+ static lvalue_type _m_from;
+#if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES) && ((__GNUC__ > 4) || ((__GNUC__ == 4) && (__GNUC_MINOR__ > 6)))
+ static bool const value =
+ sizeof( boost::detail::checker<To>::_m_check(static_cast<rvalue_type>(_m_from), 0) )
+ == sizeof(::boost::type_traits::yes_type);
+#else
+ static bool const value =
+ sizeof( boost::detail::checker<To>::_m_check(_m_from, 0) )
         == sizeof(::boost::type_traits::yes_type);
+#endif
 };
 
 #elif (defined(__EDG_VERSION__) && (__EDG_VERSION__ >= 245) && !defined(__ICL)) \
@@ -152,6 +163,8 @@
 struct any_conversion
 {
     template <typename T> any_conversion(const volatile T&);
+ template <typename T> any_conversion(const T&);
+ template <typename T> any_conversion(volatile T&);
     // we need this constructor to catch references to functions
     // (which can not be cv-qualified):
     template <typename T> any_conversion(T&);
@@ -162,11 +175,19 @@
 {
     static ::boost::type_traits::no_type BOOST_TT_DECL _m_check(any_conversion ...);
     static ::boost::type_traits::yes_type BOOST_TT_DECL _m_check(To, int);
- static typename add_rvalue_reference<From>::type _m_from;
+ typedef typename add_lvalue_reference<From>::type lvalue_type;
+ typedef typename add_rvalue_reference<From>::type rvalue_type;
+ static lvalue_type _m_from;
 
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
+ BOOST_STATIC_CONSTANT(bool, value =
+ sizeof( _m_check(static_cast<rvalue_type>(_m_from), 0) ) == sizeof(::boost::type_traits::yes_type)
+ );
+#else
     BOOST_STATIC_CONSTANT(bool, value =
         sizeof( _m_check(_m_from, 0) ) == sizeof(::boost::type_traits::yes_type)
         );
+#endif
 };
 
 #elif defined(__DMC__)
@@ -174,6 +195,8 @@
 struct any_conversion
 {
     template <typename T> any_conversion(const volatile T&);
+ template <typename T> any_conversion(const T&);
+ template <typename T> any_conversion(volatile T&);
     // we need this constructor to catch references to functions
     // (which can not be cv-qualified):
     template <typename T> any_conversion(T&);
@@ -186,13 +209,21 @@
     template <class T>
     static ::boost::type_traits::no_type BOOST_TT_DECL _m_check(any_conversion, float, T);
     static ::boost::type_traits::yes_type BOOST_TT_DECL _m_check(To, int, int);
- static typename add_rvalue_reference<From>::type _m_from;
+ typedef typename add_lvalue_reference<From>::type lvalue_type;
+ typedef typename add_rvalue_reference<From>::type rvalue_type;
+ static lvalue_type _m_from;
 
     // Static constants sometime cause the conversion of _m_from to To to be
     // called. This doesn't happen with an enum.
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
+ enum { value =
+ sizeof( _m_check(static_cast<rvalue_type>(_m_from), 0, 0) ) == sizeof(::boost::type_traits::yes_type)
+ };
+#else
     enum { value =
         sizeof( _m_check(_m_from, 0, 0) ) == sizeof(::boost::type_traits::yes_type)
         };
+#endif
 };
 
 #elif defined(__MWERKS__)
@@ -209,6 +240,9 @@
 struct any_conversion
 {
     template <typename T> any_conversion(const volatile T&);
+ template <typename T> any_conversion(const T&);
+ template <typename T> any_conversion(volatile T&);
+ template <typename T> any_conversion(T&);
 };
 
 template <typename From, typename To>
@@ -216,11 +250,19 @@
 {
     static ::boost::type_traits::no_type BOOST_TT_DECL _m_check(any_conversion ...);
     static ::boost::type_traits::yes_type BOOST_TT_DECL _m_check(To, int);
- static typename add_rvalue_reference<From>::type _m_from;
+ typedef typename add_lvalue_reference<From>::type lvalue_type;
+ typedef typename add_rvalue_reference<From>::type rvalue_type;
+ static lvalue_type _m_from;
 
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
+ BOOST_STATIC_CONSTANT(bool, value =
+ sizeof( _m_check(static_cast<rvalue_type>(_m_from), 0) ) == sizeof(::boost::type_traits::yes_type)
+ );
+#else
     BOOST_STATIC_CONSTANT(bool, value =
         sizeof( _m_check(_m_from, 0) ) == sizeof(::boost::type_traits::yes_type)
         );
+#endif
 };
 
 template <typename From, typename To>
@@ -228,10 +270,18 @@
 {
     static ::boost::type_traits::no_type BOOST_TT_DECL _m_check(...);
     static ::boost::type_traits::yes_type BOOST_TT_DECL _m_check(To);
- static typename add_rvalue_reference<From>::type _m_from;
+ typedef typename add_lvalue_reference<From>::type lvalue_type;
+ typedef typename add_rvalue_reference<From>::type rvalue_type;
+ static lvalue_type _m_from;
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
+ BOOST_STATIC_CONSTANT(bool, value =
+ sizeof( _m_check(static_cast<rvalue_type>(_m_from)) ) == sizeof(::boost::type_traits::yes_type)
+ );
+#else
     BOOST_STATIC_CONSTANT(bool, value =
         sizeof( _m_check(_m_from) ) == sizeof(::boost::type_traits::yes_type)
         );
+#endif
 };
 
 template <typename From, typename To>
@@ -243,7 +293,6 @@
 {};
 
 #else
-
 //
 // This version seems to work pretty well for a wide spectrum of compilers,
 // however it does rely on undefined behaviour by passing UDT's through (...).
@@ -253,7 +302,9 @@
 {
     static ::boost::type_traits::no_type BOOST_TT_DECL _m_check(...);
     static ::boost::type_traits::yes_type BOOST_TT_DECL _m_check(To);
- static typename add_rvalue_reference<From>::type _m_from;
+ typedef typename add_lvalue_reference<From>::type lvalue_type;
+ typedef typename add_rvalue_reference<From>::type rvalue_type;
+ static lvalue_type _m_from;
 #ifdef BOOST_MSVC
 #pragma warning(push)
 #pragma warning(disable:4244)
@@ -261,9 +312,15 @@
 #pragma warning(disable:6334)
 #endif
 #endif
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
+ BOOST_STATIC_CONSTANT(bool, value =
+ sizeof( _m_check(static_cast<rvalue_type>(_m_from)) ) == sizeof(::boost::type_traits::yes_type)
+ );
+#else
     BOOST_STATIC_CONSTANT(bool, value =
         sizeof( _m_check(_m_from) ) == sizeof(::boost::type_traits::yes_type)
         );
+#endif
 #ifdef BOOST_MSVC
 #pragma warning(pop)
 #endif
@@ -276,15 +333,17 @@
 template <typename From, typename To>
 struct is_convertible_impl
 {
- typedef typename add_reference<From>::type ref_type;
     enum { value =
         (::boost::type_traits::ice_and<
             ::boost::type_traits::ice_or<
- ::boost::detail::is_convertible_basic_impl<ref_type,To>::value,
+ ::boost::detail::is_convertible_basic_impl<From,To>::value,
                ::boost::is_void<To>::value
>::value,
             ::boost::type_traits::ice_not<
                ::boost::is_array<To>::value
+ >::value,
+ ::boost::type_traits::ice_not<
+ ::boost::is_function<To>::value
>::value
>::value) };
 };
@@ -292,15 +351,17 @@
 template <typename From, typename To>
 struct is_convertible_impl
 {
- typedef typename add_reference<From>::type ref_type;
     BOOST_STATIC_CONSTANT(bool, value =
         (::boost::type_traits::ice_and<
             ::boost::type_traits::ice_or<
- ::boost::detail::is_convertible_basic_impl<ref_type,To>::value,
+ ::boost::detail::is_convertible_basic_impl<From,To>::value,
                ::boost::is_void<To>::value
>::value,
             ::boost::type_traits::ice_not<
                ::boost::is_array<To>::value
+ >::value,
+ ::boost::type_traits::ice_not<
+ ::boost::is_function<To>::value
>::value
>::value)
         );

Modified: branches/release/boost/type_traits/is_function.hpp
==============================================================================
--- branches/release/boost/type_traits/is_function.hpp (original)
+++ branches/release/boost/type_traits/is_function.hpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -83,6 +83,11 @@
 template <typename T>
 struct is_function_impl<T&> : public false_type
 {};
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
+template <typename T>
+struct is_function_impl<T&&> : public false_type
+{};
+#endif
 #endif
 
 #endif
@@ -95,7 +100,7 @@
 BOOST_TT_AUX_BOOL_TRAIT_DEF1(is_function,T,__is_function(T))
 #else
 BOOST_TT_AUX_BOOL_TRAIT_DEF1(is_function,T,::boost::detail::is_function_impl<T>::value)
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
 BOOST_TT_AUX_BOOL_TRAIT_PARTIAL_SPEC1_1(typename T,is_function,T&&,false)
 #endif
 #endif

Modified: branches/release/boost/type_traits/is_integral.hpp
==============================================================================
--- branches/release/boost/type_traits/is_integral.hpp (original)
+++ branches/release/boost/type_traits/is_integral.hpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -68,6 +68,11 @@
 BOOST_TT_AUX_BOOL_TRAIT_CV_SPEC1(is_integral,unsigned __int64,true)
 BOOST_TT_AUX_BOOL_TRAIT_CV_SPEC1(is_integral,__int64,true)
 #endif
+
+#ifdef BOOST_HAS_INT128
+BOOST_TT_AUX_BOOL_TRAIT_CV_SPEC1(is_integral,boost::int128_type,true)
+BOOST_TT_AUX_BOOL_TRAIT_CV_SPEC1(is_integral,boost::uint128_type,true)
+#endif
 
 #endif // non-CodeGear implementation
 

Modified: branches/release/boost/type_traits/is_rvalue_reference.hpp
==============================================================================
--- branches/release/boost/type_traits/is_rvalue_reference.hpp (original)
+++ branches/release/boost/type_traits/is_rvalue_reference.hpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -17,7 +17,7 @@
 namespace boost {
 
 BOOST_TT_AUX_BOOL_TRAIT_DEF1(is_rvalue_reference,T,false)
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
 BOOST_TT_AUX_BOOL_TRAIT_PARTIAL_SPEC1_1(typename T,is_rvalue_reference,T&&,true)
 #endif
 

Modified: branches/release/boost/type_traits/is_volatile.hpp
==============================================================================
--- branches/release/boost/type_traits/is_volatile.hpp (original)
+++ branches/release/boost/type_traits/is_volatile.hpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -51,7 +51,7 @@
    BOOST_STATIC_CONSTANT(bool, value = ::boost::detail::cv_traits_imp<T*>::is_volatile);
 #endif
 };
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
 //
 // We can't filter out rvalue_references at the same level as
 // references or we get ambiguities from msvc:

Modified: branches/release/boost/type_traits/make_signed.hpp
==============================================================================
--- branches/release/boost/type_traits/make_signed.hpp (original)
+++ branches/release/boost/type_traits/make_signed.hpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -72,7 +72,15 @@
                      is_same<t_no_cv, unsigned long>,
                      long,
 #if defined(BOOST_HAS_LONG_LONG)
+#ifdef BOOST_HAS_INT128
+ typename mpl::if_c<
+ sizeof(t_no_cv) == sizeof(boost::long_long_type),
+ boost::long_long_type,
+ boost::int128_type
+ >::type
+#else
                      boost::long_long_type
+#endif
 #elif defined(BOOST_HAS_MS_INT64)
                      __int64
 #else
@@ -96,7 +104,15 @@
                      sizeof(t_no_cv) == sizeof(unsigned long),
                      long,
 #if defined(BOOST_HAS_LONG_LONG)
+#ifdef BOOST_HAS_INT128
+ typename mpl::if_c<
+ sizeof(t_no_cv) == sizeof(boost::long_long_type),
+ boost::long_long_type,
+ boost::int128_type
+ >::type
+#else
                      boost::long_long_type
+#endif
 #elif defined(BOOST_HAS_MS_INT64)
                      __int64
 #else

Modified: branches/release/boost/type_traits/make_unsigned.hpp
==============================================================================
--- branches/release/boost/type_traits/make_unsigned.hpp (original)
+++ branches/release/boost/type_traits/make_unsigned.hpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -72,7 +72,15 @@
                      is_same<t_no_cv, long>,
                      unsigned long,
 #if defined(BOOST_HAS_LONG_LONG)
+#ifdef BOOST_HAS_INT128
+ typename mpl::if_c<
+ sizeof(t_no_cv) == sizeof(boost::ulong_long_type),
+ boost::ulong_long_type,
+ boost::uint128_type
+ >::type
+#else
                      boost::ulong_long_type
+#endif
 #elif defined(BOOST_HAS_MS_INT64)
                      unsigned __int64
 #else
@@ -96,7 +104,15 @@
                      sizeof(t_no_cv) == sizeof(unsigned long),
                      unsigned long,
 #if defined(BOOST_HAS_LONG_LONG)
+#ifdef BOOST_HAS_INT128
+ typename mpl::if_c<
+ sizeof(t_no_cv) == sizeof(boost::ulong_long_type),
+ boost::ulong_long_type,
+ boost::uint128_type
+ >::type
+#else
                      boost::ulong_long_type
+#endif
 #elif defined(BOOST_HAS_MS_INT64)
                      unsigned __int64
 #else

Modified: branches/release/boost/type_traits/remove_const.hpp
==============================================================================
--- branches/release/boost/type_traits/remove_const.hpp (original)
+++ branches/release/boost/type_traits/remove_const.hpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -54,7 +54,7 @@
>::type type;
 };
 
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
 //
 // We can't filter out rvalue_references at the same level as
 // references or we get ambiguities from msvc:

Modified: branches/release/boost/type_traits/remove_cv.hpp
==============================================================================
--- branches/release/boost/type_traits/remove_cv.hpp (original)
+++ branches/release/boost/type_traits/remove_cv.hpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -37,7 +37,7 @@
    typedef typename boost::detail::cv_traits_imp<T*>::unqualified_type type;
 };
 
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
 //
 // We can't filter out rvalue_references at the same level as
 // references or we get ambiguities from msvc:

Modified: branches/release/boost/type_traits/remove_reference.hpp
==============================================================================
--- branches/release/boost/type_traits/remove_reference.hpp (original)
+++ branches/release/boost/type_traits/remove_reference.hpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -34,7 +34,7 @@
 {
    typedef T type;
 };
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
 template <class T>
 struct remove_rvalue_ref<T&&>
 {

Modified: branches/release/boost/type_traits/remove_volatile.hpp
==============================================================================
--- branches/release/boost/type_traits/remove_volatile.hpp (original)
+++ branches/release/boost/type_traits/remove_volatile.hpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -57,7 +57,7 @@
 // We can't filter out rvalue_references at the same level as
 // references or we get ambiguities from msvc:
 //
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
 template <typename T>
 struct remove_volatile_impl<T&&>
 {

Modified: branches/release/libs/type_traits/test/add_const_test.cpp
==============================================================================
--- branches/release/libs/type_traits/test/add_const_test.cpp (original)
+++ branches/release/libs/type_traits/test/add_const_test.cpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -21,7 +21,7 @@
 BOOST_DECL_TRANSFORM_TEST(add_const_test_11, ::tt::add_const, volatile*, volatile*const)
 BOOST_DECL_TRANSFORM_TEST(add_const_test_5, ::tt::add_const, const &, const&)
 BOOST_DECL_TRANSFORM_TEST(add_const_test_6, ::tt::add_const, &, &)
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
 BOOST_DECL_TRANSFORM_TEST(add_const_test_5a, ::tt::add_const, const &&, const&&)
 BOOST_DECL_TRANSFORM_TEST(add_const_test_6a, ::tt::add_const, &&, &&)
 #endif
@@ -45,7 +45,7 @@
    add_const_test_9();
    add_const_test_12();
    add_const_test_13();
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
    add_const_test_5a();
    add_const_test_6a();
 #endif

Modified: branches/release/libs/type_traits/test/add_cv_test.cpp
==============================================================================
--- branches/release/libs/type_traits/test/add_cv_test.cpp (original)
+++ branches/release/libs/type_traits/test/add_cv_test.cpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -21,7 +21,7 @@
 BOOST_DECL_TRANSFORM_TEST(add_cv_test_11, ::tt::add_cv, volatile*, volatile*const volatile )
 BOOST_DECL_TRANSFORM_TEST(add_cv_test_5, ::tt::add_cv, const &, const&)
 BOOST_DECL_TRANSFORM_TEST(add_cv_test_6, ::tt::add_cv, &, &)
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
 BOOST_DECL_TRANSFORM_TEST(add_cv_test_5a, ::tt::add_cv, const &&, const&&)
 BOOST_DECL_TRANSFORM_TEST(add_cv_test_6a, ::tt::add_cv, &&, &&)
 #endif
@@ -45,7 +45,7 @@
    add_cv_test_9();
    add_cv_test_12();
    add_cv_test_13();
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
    add_cv_test_5a();
    add_cv_test_6a();
 #endif

Modified: branches/release/libs/type_traits/test/add_lvalue_reference_test.cpp
==============================================================================
--- branches/release/libs/type_traits/test/add_lvalue_reference_test.cpp (original)
+++ branches/release/libs/type_traits/test/add_lvalue_reference_test.cpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -25,7 +25,7 @@
 BOOST_DECL_TRANSFORM_TEST(add_lvalue_reference_test_11, ::tt::add_lvalue_reference, volatile*, volatile*&)
 BOOST_DECL_TRANSFORM_TEST(add_lvalue_reference_test_12, ::tt::add_lvalue_reference, const[2][3], const (&)[2][3])
 BOOST_DECL_TRANSFORM_TEST(add_lvalue_reference_test_13, ::tt::add_lvalue_reference, (&)[2], (&)[2])
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
 BOOST_DECL_TRANSFORM_TEST(add_lvalue_reference_test_5a, ::tt::add_lvalue_reference, const &&, const&)
 BOOST_DECL_TRANSFORM_TEST(add_lvalue_reference_test_6a, ::tt::add_lvalue_reference, &&, &)
 BOOST_DECL_TRANSFORM_TEST(add_lvalue_reference_test_13a, ::tt::add_lvalue_reference, (&&)[2], (&)[2])
@@ -46,7 +46,7 @@
    add_lvalue_reference_test_11();
    add_lvalue_reference_test_12();
    add_lvalue_reference_test_13();
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
    add_lvalue_reference_test_5a();
    add_lvalue_reference_test_6a();
    add_lvalue_reference_test_13a();

Modified: branches/release/libs/type_traits/test/add_reference_test.cpp
==============================================================================
--- branches/release/libs/type_traits/test/add_reference_test.cpp (original)
+++ branches/release/libs/type_traits/test/add_reference_test.cpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -25,7 +25,7 @@
 BOOST_DECL_TRANSFORM_TEST(add_reference_test_11, ::tt::add_reference, volatile*, volatile*&)
 BOOST_DECL_TRANSFORM_TEST(add_reference_test_12, ::tt::add_reference, const[2][3], const (&)[2][3])
 BOOST_DECL_TRANSFORM_TEST(add_reference_test_13, ::tt::add_reference, (&)[2], (&)[2])
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
 BOOST_DECL_TRANSFORM_TEST(add_reference_test_5a, ::tt::add_reference, const &&, const&&)
 BOOST_DECL_TRANSFORM_TEST(add_reference_test_6a, ::tt::add_reference, &&, &&)
 BOOST_DECL_TRANSFORM_TEST(add_reference_test_13a, ::tt::add_reference, (&&)[2], (&&)[2])
@@ -46,7 +46,7 @@
    add_reference_test_11();
    add_reference_test_12();
    add_reference_test_13();
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
    add_reference_test_5a();
    add_reference_test_6a();
    add_reference_test_13a();

Modified: branches/release/libs/type_traits/test/add_rvalue_reference_test.cpp
==============================================================================
--- branches/release/libs/type_traits/test/add_rvalue_reference_test.cpp (original)
+++ branches/release/libs/type_traits/test/add_rvalue_reference_test.cpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -12,7 +12,7 @@
 # include <boost/type_traits/add_rvalue_reference.hpp>
 #endif
 
-#ifdef BOOST_NO_RVALUE_REFERENCES
+#ifdef BOOST_NO_CXX11_RVALUE_REFERENCES
 
 BOOST_DECL_TRANSFORM_TEST(add_rvalue_reference_test_1, ::tt::add_rvalue_reference, const, const)
 BOOST_DECL_TRANSFORM_TEST(add_rvalue_reference_test_2, ::tt::add_rvalue_reference, volatile, volatile)
@@ -63,7 +63,7 @@
    add_rvalue_reference_test_11();
    add_rvalue_reference_test_12();
    add_rvalue_reference_test_13();
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
    add_rvalue_reference_test_5a();
    add_rvalue_reference_test_6a();
    add_rvalue_reference_test_13a();

Modified: branches/release/libs/type_traits/test/add_volatile_test.cpp
==============================================================================
--- branches/release/libs/type_traits/test/add_volatile_test.cpp (original)
+++ branches/release/libs/type_traits/test/add_volatile_test.cpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -21,7 +21,7 @@
 BOOST_DECL_TRANSFORM_TEST(add_volatile_test_11, ::tt::add_volatile, volatile*, volatile*volatile)
 BOOST_DECL_TRANSFORM_TEST(add_volatile_test_5, ::tt::add_volatile, const &, const&)
 BOOST_DECL_TRANSFORM_TEST(add_volatile_test_6, ::tt::add_volatile, &, &)
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
 BOOST_DECL_TRANSFORM_TEST(add_volatile_test_6a, ::tt::add_volatile, &&, &&)
 #endif
 BOOST_DECL_TRANSFORM_TEST(add_volatile_test_8, ::tt::add_volatile, const [2], const volatile [2])
@@ -44,7 +44,7 @@
    add_volatile_test_9();
    add_volatile_test_12();
    add_volatile_test_13();
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
    add_volatile_test_6a();
 #endif
 

Modified: branches/release/libs/type_traits/test/common_type_2_test.cpp
==============================================================================
--- branches/release/libs/type_traits/test/common_type_2_test.cpp (original)
+++ branches/release/libs/type_traits/test/common_type_2_test.cpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -92,7 +92,7 @@
     typedef tt::common_type<C1C2&, C1&>::type T1;
     typedef tt::common_type<C3*, C2*>::type T2;
     typedef tt::common_type<int*, int const*>::type T3;
-#if defined(BOOST_NO_DECLTYPE) && !defined(BOOST_COMMON_TYPE_DONT_USE_TYPEOF)
+#if defined(BOOST_NO_CXX11_DECLTYPE) && !defined(BOOST_COMMON_TYPE_DONT_USE_TYPEOF)
     // fails if BOOST_COMMON_TYPE_DONT_USE_TYPEOF:
     typedef tt::common_type<int volatile*, int const*>::type T4;
 #endif

Modified: branches/release/libs/type_traits/test/common_type_test.cpp
==============================================================================
--- branches/release/libs/type_traits/test/common_type_test.cpp (original)
+++ branches/release/libs/type_traits/test/common_type_test.cpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -89,7 +89,7 @@
     typedef tt::common_type<C1C2&, C1&>::type T1;
     typedef tt::common_type<C3*, C2*>::type T2;
     typedef tt::common_type<int*, int const*>::type T3;
-#if defined(BOOST_NO_DECLTYPE) && !defined(BOOST_COMMON_TYPE_DONT_USE_TYPEOF)
+#if defined(BOOST_NO_CXX11_DECLTYPE) && !defined(BOOST_COMMON_TYPE_DONT_USE_TYPEOF)
     // fails if BOOST_COMMON_TYPE_DONT_USE_TYPEOF:
     typedef tt::common_type<int volatile*, int const*>::type T4;
 #endif

Modified: branches/release/libs/type_traits/test/extent_test.cpp
==============================================================================
--- branches/release/libs/type_traits/test/extent_test.cpp (original)
+++ branches/release/libs/type_traits/test/extent_test.cpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -34,7 +34,7 @@
 
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::extent<int*>::value, 0);
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::extent<int&>::value, 0);
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::extent<int&&>::value, 0);
 #endif
 

Modified: branches/release/libs/type_traits/test/has_nothrow_assign_test.cpp
==============================================================================
--- branches/release/libs/type_traits/test/has_nothrow_assign_test.cpp (original)
+++ branches/release/libs/type_traits/test/has_nothrow_assign_test.cpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -184,7 +184,7 @@
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::has_nothrow_assign<enum_UDT>::value, true);
 
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::has_nothrow_assign<int&>::value, false);
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::has_nothrow_assign<int&&>::value, false);
 #endif
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::has_nothrow_assign<const int&>::value, false);

Modified: branches/release/libs/type_traits/test/has_nothrow_constr_test.cpp
==============================================================================
--- branches/release/libs/type_traits/test/has_nothrow_constr_test.cpp (original)
+++ branches/release/libs/type_traits/test/has_nothrow_constr_test.cpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -142,7 +142,7 @@
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::has_nothrow_constructor<enum_UDT>::value, true);
 
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::has_nothrow_constructor<int&>::value, false);
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::has_nothrow_constructor<int&&>::value, false);
 #endif
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::has_nothrow_constructor<const int&>::value, false);

Modified: branches/release/libs/type_traits/test/has_nothrow_copy_test.cpp
==============================================================================
--- branches/release/libs/type_traits/test/has_nothrow_copy_test.cpp (original)
+++ branches/release/libs/type_traits/test/has_nothrow_copy_test.cpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -181,7 +181,7 @@
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::has_nothrow_copy<enum_UDT>::value, true);
 
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::has_nothrow_copy<int&>::value, false);
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::has_nothrow_copy<int&&>::value, false);
 #endif
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::has_nothrow_copy<const int&>::value, false);

Modified: branches/release/libs/type_traits/test/has_operator_new_test.cpp
==============================================================================
--- branches/release/libs/type_traits/test/has_operator_new_test.cpp (original)
+++ branches/release/libs/type_traits/test/has_operator_new_test.cpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -188,7 +188,7 @@
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::has_new_operator<enum_UDT>::value, false);
 
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::has_new_operator<int&>::value, false);
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::has_new_operator<int&&>::value, false);
 #endif
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::has_new_operator<const int&>::value, false);

Modified: branches/release/libs/type_traits/test/has_trivial_assign_test.cpp
==============================================================================
--- branches/release/libs/type_traits/test/has_trivial_assign_test.cpp (original)
+++ branches/release/libs/type_traits/test/has_trivial_assign_test.cpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -176,7 +176,7 @@
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::has_trivial_assign<enum_UDT>::value, true);
 
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::has_trivial_assign<int&>::value, false);
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::has_trivial_assign<int&&>::value, false);
 #endif
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::has_trivial_assign<const int&>::value, false);

Modified: branches/release/libs/type_traits/test/has_trivial_constr_test.cpp
==============================================================================
--- branches/release/libs/type_traits/test/has_trivial_constr_test.cpp (original)
+++ branches/release/libs/type_traits/test/has_trivial_constr_test.cpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -142,7 +142,7 @@
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::has_trivial_constructor<enum_UDT>::value, true);
 
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::has_trivial_constructor<int&>::value, false);
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::has_trivial_constructor<int&&>::value, false);
 #endif
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::has_trivial_constructor<const int&>::value, false);

Modified: branches/release/libs/type_traits/test/has_trivial_copy_test.cpp
==============================================================================
--- branches/release/libs/type_traits/test/has_trivial_copy_test.cpp (original)
+++ branches/release/libs/type_traits/test/has_trivial_copy_test.cpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -177,7 +177,7 @@
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::has_trivial_copy<enum_UDT>::value, true);
 
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::has_trivial_copy<int&>::value, false);
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::has_trivial_copy<int&&>::value, false);
 #endif
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::has_trivial_copy<const int&>::value, false);

Modified: branches/release/libs/type_traits/test/has_virtual_destructor_test.cpp
==============================================================================
--- branches/release/libs/type_traits/test/has_virtual_destructor_test.cpp (original)
+++ branches/release/libs/type_traits/test/has_virtual_destructor_test.cpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -41,7 +41,7 @@
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::has_virtual_destructor<UDT*>::value, false);
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::has_virtual_destructor<UDT[2]>::value, false);
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::has_virtual_destructor<UDT&>::value, false);
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::has_virtual_destructor<UDT&&>::value, false);
 #endif
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::has_virtual_destructor<void>::value, false);

Modified: branches/release/libs/type_traits/test/is_abstract_test.cpp
==============================================================================
--- branches/release/libs/type_traits/test/is_abstract_test.cpp (original)
+++ branches/release/libs/type_traits/test/is_abstract_test.cpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -226,7 +226,7 @@
 BOOST_CHECK_INTEGRAL_CONSTANT((::tt::is_abstract<volatile const TestAF>::value), false);
 BOOST_CHECK_INTEGRAL_CONSTANT((::tt::is_abstract<volatile const TestAG>::value), false);
 
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
 BOOST_CHECK_INTEGRAL_CONSTANT((::tt::is_abstract<TestA&&>::value), false);
 #endif
 BOOST_CHECK_INTEGRAL_CONSTANT((::tt::is_abstract<TestA&>::value), false);

Modified: branches/release/libs/type_traits/test/is_arithmetic_test.cpp
==============================================================================
--- branches/release/libs/type_traits/test/is_arithmetic_test.cpp (original)
+++ branches/release/libs/type_traits/test/is_arithmetic_test.cpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -136,7 +136,7 @@
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_arithmetic<empty_UDT>::value, false);
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_arithmetic<float*>::value, false);
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_arithmetic<float&>::value, false);
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_arithmetic<float&&>::value, false);
 #endif
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_arithmetic<const float&>::value, false);

Modified: branches/release/libs/type_traits/test/is_array_test.cpp
==============================================================================
--- branches/release/libs/type_traits/test/is_array_test.cpp (original)
+++ branches/release/libs/type_traits/test/is_array_test.cpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -32,7 +32,7 @@
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_array<int[2][3]>::value, true);
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_array<UDT[2]>::value, true);
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_array<int(&)[2]>::value, false);
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_array<int(&&)[2]>::value, false);
 #endif
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_array<f1>::value, false);

Modified: branches/release/libs/type_traits/test/is_class_test.cpp
==============================================================================
--- branches/release/libs/type_traits/test/is_class_test.cpp (original)
+++ branches/release/libs/type_traits/test/is_class_test.cpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -23,7 +23,7 @@
    BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_class<int[2]>::value, false);
    BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_class<int const[2]>::value, false);
    BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_class<int&>::value, false);
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
    BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_class<int&&>::value, false);
 #endif
    BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_class<mf4>::value, false);

Modified: branches/release/libs/type_traits/test/is_const_test.cpp
==============================================================================
--- branches/release/libs/type_traits/test/is_const_test.cpp (original)
+++ branches/release/libs/type_traits/test/is_const_test.cpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -23,7 +23,7 @@
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_const<const UDT>::value, true);
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_const<const volatile UDT>::value, true);
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_const<const int&>::value, false);
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_const<const int&&>::value, false);
 #endif
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_const<cr_type>::value, false);

Modified: branches/release/libs/type_traits/test/is_convertible_test.cpp
==============================================================================
--- branches/release/libs/type_traits/test/is_convertible_test.cpp (original)
+++ branches/release/libs/type_traits/test/is_convertible_test.cpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -24,7 +24,7 @@
 struct middle2 : public virtual base2 { };
 struct derived2 : public middle2 { };
 
-#if !defined(BOOST_NO_RVALUE_REFERENCES)
+#if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
 
 template<typename T>
 struct test_bug_4530
@@ -100,8 +100,13 @@
 BOOST_CHECK_INTEGRAL_CONSTANT((::tt::is_convertible<const int&, int&>::value), false);
 BOOST_CHECK_INTEGRAL_CONSTANT((::tt::is_convertible<const int*, int[3]>::value), false);
 BOOST_CHECK_INTEGRAL_CONSTANT((::tt::is_convertible<const int&, int>::value), true);
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
 BOOST_CHECK_INTEGRAL_CONSTANT((::tt::is_convertible<const int&&, int>::value), true);
+BOOST_CHECK_INTEGRAL_CONSTANT((::tt::is_convertible<int&&, const int&>::value), true);
+#if !defined(__GNUC__) || ((__GNUC__ > 4) || ((__GNUC__ == 4) && (__GNUC_MINOR__ > 6)))
+// Machinary required to support this, not available prior to gcc-4.7.0:
+BOOST_CHECK_INTEGRAL_CONSTANT((::tt::is_convertible<int, int&>::value), false);
+#endif
 #endif
 BOOST_CHECK_INTEGRAL_CONSTANT((::tt::is_convertible<int(&)[4], const int*>::value), true);
 BOOST_CHECK_INTEGRAL_CONSTANT((::tt::is_convertible<int(&)(int), int(*)(int)>::value), true);
@@ -177,7 +182,7 @@
 BOOST_CHECK_INTEGRAL_CONSTANT((::tt::is_convertible<__int64,float>::value), true);
 #endif
 
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
 // Test bug case 4530:
 BOOST_CHECK_INTEGRAL_CONSTANT((::tt::is_convertible<test_bug_4530<A4530>,A4530>::value), true);
 #endif

Modified: branches/release/libs/type_traits/test/is_empty_test.cpp
==============================================================================
--- branches/release/libs/type_traits/test/is_empty_test.cpp (original)
+++ branches/release/libs/type_traits/test/is_empty_test.cpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -24,7 +24,7 @@
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_empty<int>::value, false);
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_empty<int*>::value, false);
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_empty<int&>::value, false);
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_empty<int&&>::value, false);
 #endif
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_empty<void>::value, false);

Modified: branches/release/libs/type_traits/test/is_enum_test.cpp
==============================================================================
--- branches/release/libs/type_traits/test/is_enum_test.cpp (original)
+++ branches/release/libs/type_traits/test/is_enum_test.cpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -12,7 +12,7 @@
 # include <boost/type_traits/is_enum.hpp>
 #endif
 
-#ifndef BOOST_NO_SCOPED_ENUMS
+#ifndef BOOST_NO_CXX11_SCOPED_ENUMS
 
 enum class test_enum
 {
@@ -27,13 +27,13 @@
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_enum<enum_UDT>::value, true);
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_enum<int_convertible>::value, false);
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_enum<int&>::value, false);
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_enum<int&&>::value, false);
 #endif
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_enum<boost::noncopyable>::value, false);
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_enum<void>::value, false);
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_enum<test_abc1>::value, false);
-#ifndef BOOST_NO_SCOPED_ENUMS
+#ifndef BOOST_NO_CXX11_SCOPED_ENUMS
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_enum<test_enum>::value, true);
 #endif
 

Modified: branches/release/libs/type_traits/test/is_float_test.cpp
==============================================================================
--- branches/release/libs/type_traits/test/is_float_test.cpp (original)
+++ branches/release/libs/type_traits/test/is_float_test.cpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -39,7 +39,7 @@
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_float<empty_UDT>::value, false);
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_float<float*>::value, false);
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_float<float&>::value, false);
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_float<float&&>::value, false);
 #endif
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_float<const float&>::value, false);

Modified: branches/release/libs/type_traits/test/is_floating_point_test.cpp
==============================================================================
--- branches/release/libs/type_traits/test/is_floating_point_test.cpp (original)
+++ branches/release/libs/type_traits/test/is_floating_point_test.cpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -39,7 +39,7 @@
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_floating_point<empty_UDT>::value, false);
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_floating_point<float*>::value, false);
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_floating_point<float&>::value, false);
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_floating_point<float&&>::value, false);
 #endif
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_floating_point<const float&>::value, false);

Modified: branches/release/libs/type_traits/test/is_function_test.cpp
==============================================================================
--- branches/release/libs/type_traits/test/is_function_test.cpp (original)
+++ branches/release/libs/type_traits/test/is_function_test.cpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -30,7 +30,7 @@
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_function<int>::value, false);
 #if !defined(BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION)
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_function<int&>::value, false);
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_function<int&&>::value, false);
 #endif
 #else

Modified: branches/release/libs/type_traits/test/is_fundamental_test.cpp
==============================================================================
--- branches/release/libs/type_traits/test/is_fundamental_test.cpp (original)
+++ branches/release/libs/type_traits/test/is_fundamental_test.cpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -140,7 +140,7 @@
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_fundamental<empty_UDT>::value, false);
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_fundamental<float*>::value, false);
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_fundamental<float&>::value, false);
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_fundamental<float&&>::value, false);
 #endif
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_fundamental<const float&>::value, false);

Modified: branches/release/libs/type_traits/test/is_integral_test.cpp
==============================================================================
--- branches/release/libs/type_traits/test/is_integral_test.cpp (original)
+++ branches/release/libs/type_traits/test/is_integral_test.cpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -112,6 +112,18 @@
 
 #endif
 
+#ifdef BOOST_HAS_INT128
+
+BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_integral<boost::uint128_type>::value, true);
+BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_integral<boost::int128_type>::value, true);
+BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_integral<boost::uint128_type const>::value, true);
+BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_integral<boost::int128_type const>::value, true);
+BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_integral<boost::uint128_type volatile>::value, true);
+BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_integral<boost::int128_type volatile>::value, true);
+BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_integral<boost::uint128_type const volatile>::value, true);
+BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_integral<boost::int128_type const volatile>::value, true);
+
+#endif
 //
 // cases that should not be true:
 //
@@ -122,7 +134,7 @@
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_integral<empty_UDT>::value, false);
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_integral<int*>::value, false);
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_integral<int&>::value, false);
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_integral<int&&>::value, false);
 #endif
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_integral<const int&>::value, false);

Modified: branches/release/libs/type_traits/test/is_lvalue_reference_test.cpp
==============================================================================
--- branches/release/libs/type_traits/test/is_lvalue_reference_test.cpp (original)
+++ branches/release/libs/type_traits/test/is_lvalue_reference_test.cpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -35,7 +35,7 @@
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_lvalue_reference<test_abc1>::value, false);
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_lvalue_reference<foo0_t>::value, false);
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_lvalue_reference<incomplete_type>::value, false);
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_lvalue_reference<int&&>::value, false);
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_lvalue_reference<UDT&&>::value, false);
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_lvalue_reference<const UDT&&>::value, false);

Modified: branches/release/libs/type_traits/test/is_object_test.cpp
==============================================================================
--- branches/release/libs/type_traits/test/is_object_test.cpp (original)
+++ branches/release/libs/type_traits/test/is_object_test.cpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -17,7 +17,7 @@
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_object<int>::value, true);
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_object<UDT>::value, true);
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_object<int&>::value, false);
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_object<int&&>::value, false);
 #endif
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_object<void>::value, false);

Modified: branches/release/libs/type_traits/test/is_pod_test.cpp
==============================================================================
--- branches/release/libs/type_traits/test/is_pod_test.cpp (original)
+++ branches/release/libs/type_traits/test/is_pod_test.cpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -142,7 +142,7 @@
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_pod<enum_UDT>::value, true);
 
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_pod<int&>::value, false);
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_pod<int&&>::value, false);
 #endif
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_pod<const int&>::value, false);

Modified: branches/release/libs/type_traits/test/is_pointer_test.cpp
==============================================================================
--- branches/release/libs/type_traits/test/is_pointer_test.cpp (original)
+++ branches/release/libs/type_traits/test/is_pointer_test.cpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -16,7 +16,7 @@
 
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_pointer<int>::value, false);
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_pointer<int&>::value, false);
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_pointer<int&&>::value, false);
 #endif
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_pointer<int*>::value, true);

Modified: branches/release/libs/type_traits/test/is_polymorphic_test.cpp
==============================================================================
--- branches/release/libs/type_traits/test/is_polymorphic_test.cpp (original)
+++ branches/release/libs/type_traits/test/is_polymorphic_test.cpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -32,7 +32,7 @@
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_polymorphic<int* const>::value, false);
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_polymorphic<int[2]>::value, false);
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_polymorphic<int&>::value, false);
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_polymorphic<int&&>::value, false);
 #endif
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_polymorphic<mf4>::value, false);

Modified: branches/release/libs/type_traits/test/is_reference_test.cpp
==============================================================================
--- branches/release/libs/type_traits/test/is_reference_test.cpp (original)
+++ branches/release/libs/type_traits/test/is_reference_test.cpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -35,7 +35,7 @@
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_reference<test_abc1>::value, false);
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_reference<foo0_t>::value, false);
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_reference<incomplete_type>::value, false);
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_reference<int&&>::value, true);
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_reference<UDT&&>::value, true);
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_reference<const UDT&&>::value, true);

Modified: branches/release/libs/type_traits/test/is_rvalue_reference_test.cpp
==============================================================================
--- branches/release/libs/type_traits/test/is_rvalue_reference_test.cpp (original)
+++ branches/release/libs/type_traits/test/is_rvalue_reference_test.cpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -34,7 +34,7 @@
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_rvalue_reference<test_abc1>::value, false);
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_rvalue_reference<foo0_t>::value, false);
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_rvalue_reference<incomplete_type>::value, false);
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_rvalue_reference<int&&>::value, true);
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_rvalue_reference<UDT&&>::value, true);
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_rvalue_reference<const UDT&&>::value, true);

Modified: branches/release/libs/type_traits/test/is_same_test.cpp
==============================================================================
--- branches/release/libs/type_traits/test/is_same_test.cpp (original)
+++ branches/release/libs/type_traits/test/is_same_test.cpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -16,12 +16,12 @@
 
 BOOST_CHECK_INTEGRAL_CONSTANT((::tt::is_same<int, int>::value), true);
 BOOST_CHECK_INTEGRAL_CONSTANT((::tt::is_same<int&, int&>::value), true);
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
 BOOST_CHECK_INTEGRAL_CONSTANT((::tt::is_same<int&&, int&&>::value), true);
 #endif
 BOOST_CHECK_INTEGRAL_CONSTANT((::tt::is_same<int, const int>::value), false);
 BOOST_CHECK_INTEGRAL_CONSTANT((::tt::is_same<int, int&>::value), false);
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
 BOOST_CHECK_INTEGRAL_CONSTANT((::tt::is_same<int, int&&>::value), false);
 #endif
 BOOST_CHECK_INTEGRAL_CONSTANT((::tt::is_same<const int, int&>::value), false);

Modified: branches/release/libs/type_traits/test/is_scalar_test.cpp
==============================================================================
--- branches/release/libs/type_traits/test/is_scalar_test.cpp (original)
+++ branches/release/libs/type_traits/test/is_scalar_test.cpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -144,7 +144,7 @@
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_scalar<void>::value, false);
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_scalar<UDT>::value, false);
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_scalar<int&>::value, false);
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_scalar<int&&>::value, false);
 #endif
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_scalar<test_abc1>::value, false);

Modified: branches/release/libs/type_traits/test/is_signed_test.cpp
==============================================================================
--- branches/release/libs/type_traits/test/is_signed_test.cpp (original)
+++ branches/release/libs/type_traits/test/is_signed_test.cpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -25,12 +25,16 @@
 
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_signed<UDT>::value, false);
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_signed<int&>::value, false);
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_signed<int&&>::value, false);
 #endif
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_signed<int*>::value, false);
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_signed<int[2]>::value, false);
 
+#ifdef BOOST_HAS_INT128
+BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_signed<boost::int128_type>::value, true);
+BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_signed<boost::uint128_type>::value, false);
+#endif
 TT_TEST_END
 
 

Modified: branches/release/libs/type_traits/test/is_stateless_test.cpp
==============================================================================
--- branches/release/libs/type_traits/test/is_stateless_test.cpp (original)
+++ branches/release/libs/type_traits/test/is_stateless_test.cpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -142,7 +142,7 @@
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_stateless<enum_UDT>::value, false);
 
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_stateless<int&>::value, false);
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_stateless<int&&>::value, false);
 #endif
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_stateless<const int&>::value, false);

Modified: branches/release/libs/type_traits/test/is_union_test.cpp
==============================================================================
--- branches/release/libs/type_traits/test/is_union_test.cpp (original)
+++ branches/release/libs/type_traits/test/is_union_test.cpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -22,7 +22,7 @@
    BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_union<int* const>::value, false);
    BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_union<int[2]>::value, false);
    BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_union<int&>::value, false);
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
    BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_union<int&&>::value, false);
 #endif
    BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_union<mf4>::value, false);

Modified: branches/release/libs/type_traits/test/is_unsigned_test.cpp
==============================================================================
--- branches/release/libs/type_traits/test/is_unsigned_test.cpp (original)
+++ branches/release/libs/type_traits/test/is_unsigned_test.cpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -25,12 +25,17 @@
 
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_unsigned<UDT>::value, false);
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_unsigned<unsigned&>::value, false);
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_unsigned<unsigned&&>::value, false);
 #endif
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_unsigned<unsigned*>::value, false);
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_unsigned<unsigned[2]>::value, false);
 
+#ifdef BOOST_HAS_INT128
+BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_unsigned<boost::int128_type>::value, false);
+BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_unsigned<boost::uint128_type>::value, true);
+#endif
+
 TT_TEST_END
 
 

Modified: branches/release/libs/type_traits/test/is_void_test.cpp
==============================================================================
--- branches/release/libs/type_traits/test/is_void_test.cpp (original)
+++ branches/release/libs/type_traits/test/is_void_test.cpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -29,7 +29,7 @@
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_void<foo4_t>::value, false);
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_void<incomplete_type>::value, false);
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_void<int&>::value, false);
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_void<int&&>::value, false);
 #endif
 

Modified: branches/release/libs/type_traits/test/is_volatile_test.cpp
==============================================================================
--- branches/release/libs/type_traits/test/is_volatile_test.cpp (original)
+++ branches/release/libs/type_traits/test/is_volatile_test.cpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -34,7 +34,7 @@
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_volatile<int[]>::value, false);
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_volatile<int&>::value, false);
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_volatile<volatile int&>::value, false);
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_volatile<int&&>::value, false);
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_volatile<volatile int&&>::value, false);
 #endif

Modified: branches/release/libs/type_traits/test/make_signed_test.cpp
==============================================================================
--- branches/release/libs/type_traits/test/make_signed_test.cpp (original)
+++ branches/release/libs/type_traits/test/make_signed_test.cpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -95,6 +95,10 @@
 #elif defined(BOOST_HAS_MS_INT64)
 BOOST_CHECK_TYPE(::tt::make_signed<const volatile unsigned __int64>::type, const volatile __int64);
 #endif
+#ifdef BOOST_HAS_INT128
+BOOST_CHECK_TYPE(::tt::make_signed<boost::int128_type>::type, boost::int128_type);
+BOOST_CHECK_TYPE(::tt::make_signed<boost::uint128_type>::type, boost::int128_type);
+#endif
 
 // character types:
 BOOST_CHECK_TYPE(::tt::make_signed<char>::type, signed char);

Modified: branches/release/libs/type_traits/test/make_unsigned_test.cpp
==============================================================================
--- branches/release/libs/type_traits/test/make_unsigned_test.cpp (original)
+++ branches/release/libs/type_traits/test/make_unsigned_test.cpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -95,6 +95,10 @@
 #elif defined(BOOST_HAS_MS_INT64)
 BOOST_CHECK_TYPE(::tt::make_unsigned<const volatile unsigned __int64>::type, const volatile unsigned __int64);
 #endif
+#ifdef BOOST_HAS_INT128
+BOOST_CHECK_TYPE(::tt::make_unsigned<boost::int128_type>::type, boost::uint128_type);
+BOOST_CHECK_TYPE(::tt::make_unsigned<boost::uint128_type>::type, boost::uint128_type);
+#endif
 
 // character types:
 BOOST_CHECK_TYPE(::tt::make_unsigned<char>::type, unsigned char);

Modified: branches/release/libs/type_traits/test/rank_test.cpp
==============================================================================
--- branches/release/libs/type_traits/test/rank_test.cpp (original)
+++ branches/release/libs/type_traits/test/rank_test.cpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -21,7 +21,7 @@
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::rank<int[5][10][40]>::value, 3);
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::rank<int (&)[5][10]>::value, 0);
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::rank<int (*)[5][10]>::value, 0);
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::rank<int (&&)[5][10]>::value, 0);
 #endif
 

Modified: branches/release/libs/type_traits/test/remove_all_extents_test.cpp
==============================================================================
--- branches/release/libs/type_traits/test/remove_all_extents_test.cpp (original)
+++ branches/release/libs/type_traits/test/remove_all_extents_test.cpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -28,7 +28,7 @@
 BOOST_DECL_TRANSFORM_TEST3(remove_all_extents_test_14, ::tt::remove_all_extents, [])
 BOOST_DECL_TRANSFORM_TEST(remove_all_extents_test_15, ::tt::remove_all_extents, const [], const)
 BOOST_DECL_TRANSFORM_TEST(remove_all_extents_test_16, ::tt::remove_all_extents, const[][3], const)
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
 BOOST_DECL_TRANSFORM_TEST(remove_all_extents_test_5a, ::tt::remove_all_extents, const &&, const&&)
 BOOST_DECL_TRANSFORM_TEST(remove_all_extents_test_13a, ::tt::remove_all_extents, (&&)[2], (&&)[2])
 #endif
@@ -51,7 +51,7 @@
    remove_all_extents_test_14();
    remove_all_extents_test_15();
    remove_all_extents_test_16();
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
    remove_all_extents_test_5a();
    remove_all_extents_test_13a();
 #endif

Modified: branches/release/libs/type_traits/test/remove_bounds_test.cpp
==============================================================================
--- branches/release/libs/type_traits/test/remove_bounds_test.cpp (original)
+++ branches/release/libs/type_traits/test/remove_bounds_test.cpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -28,7 +28,7 @@
 BOOST_DECL_TRANSFORM_TEST3(remove_bounds_test_14, ::tt::remove_bounds, [])
 BOOST_DECL_TRANSFORM_TEST(remove_bounds_test_15, ::tt::remove_bounds, const [], const)
 BOOST_DECL_TRANSFORM_TEST(remove_bounds_test_16, ::tt::remove_bounds, const[][3], const[3])
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
 BOOST_DECL_TRANSFORM_TEST(remove_bounds_test_5a, ::tt::remove_bounds, const &&, const&&)
 BOOST_DECL_TRANSFORM_TEST(remove_bounds_test_13a, ::tt::remove_bounds, (&&)[2], (&&)[2])
 #endif
@@ -51,7 +51,7 @@
    remove_bounds_test_14();
    remove_bounds_test_15();
    remove_bounds_test_16();
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
    remove_bounds_test_5a();
    remove_bounds_test_13a();
 #endif

Modified: branches/release/libs/type_traits/test/remove_cv_test.cpp
==============================================================================
--- branches/release/libs/type_traits/test/remove_cv_test.cpp (original)
+++ branches/release/libs/type_traits/test/remove_cv_test.cpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -29,7 +29,7 @@
 BOOST_DECL_TRANSFORM_TEST(remove_cv_test_15, ::tt::remove_cv, [2], [2])
 BOOST_DECL_TRANSFORM_TEST(remove_cv_test_16, ::tt::remove_cv, const*, const*)
 BOOST_DECL_TRANSFORM_TEST(remove_cv_test_17, ::tt::remove_cv, const*volatile, const*)
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
 BOOST_DECL_TRANSFORM_TEST(remove_cv_test_5a, ::tt::remove_cv, const &&, const&&)
 #endif
 
@@ -52,7 +52,7 @@
    remove_cv_test_15();
    remove_cv_test_16();
    remove_cv_test_17();
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
    remove_cv_test_5a();
 #endif
 

Modified: branches/release/libs/type_traits/test/remove_extent_test.cpp
==============================================================================
--- branches/release/libs/type_traits/test/remove_extent_test.cpp (original)
+++ branches/release/libs/type_traits/test/remove_extent_test.cpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -28,7 +28,7 @@
 BOOST_DECL_TRANSFORM_TEST3(remove_extent_test_14, ::tt::remove_extent, [])
 BOOST_DECL_TRANSFORM_TEST(remove_extent_test_15, ::tt::remove_extent, const [], const)
 BOOST_DECL_TRANSFORM_TEST(remove_extent_test_16, ::tt::remove_extent, const[][3], const[3])
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
 BOOST_DECL_TRANSFORM_TEST(remove_extent_test_9a, ::tt::remove_extent, const &&, const&&)
 BOOST_DECL_TRANSFORM_TEST(remove_extent_test_13a, ::tt::remove_extent, (&&)[2], (&&)[2])
 #endif
@@ -51,7 +51,7 @@
    remove_extent_test_14();
    remove_extent_test_15();
    remove_extent_test_16();
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
    remove_extent_test_9a();
    remove_extent_test_13a();
 #endif

Modified: branches/release/libs/type_traits/test/remove_pointer_test.cpp
==============================================================================
--- branches/release/libs/type_traits/test/remove_pointer_test.cpp (original)
+++ branches/release/libs/type_traits/test/remove_pointer_test.cpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -26,7 +26,7 @@
 BOOST_DECL_TRANSFORM_TEST(remove_pointer_test_11, ::tt::remove_pointer, volatile*, volatile)
 BOOST_DECL_TRANSFORM_TEST(remove_pointer_test_12, ::tt::remove_pointer, const[2][3], const[2][3])
 BOOST_DECL_TRANSFORM_TEST(remove_pointer_test_13, ::tt::remove_pointer, (&)[2], (&)[2])
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
 BOOST_DECL_TRANSFORM_TEST(remove_pointer_test_5a, ::tt::remove_pointer, const &&, const&&)
 BOOST_DECL_TRANSFORM_TEST(remove_pointer_test_6a, ::tt::remove_pointer, &&, &&)
 BOOST_DECL_TRANSFORM_TEST(remove_pointer_test_13a, ::tt::remove_pointer, (&&)[2], (&&)[2])
@@ -50,7 +50,7 @@
    remove_pointer_test_11();
    remove_pointer_test_12();
    remove_pointer_test_13();
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
    remove_pointer_test_5a();
    remove_pointer_test_6a();
    remove_pointer_test_13a();

Modified: branches/release/libs/type_traits/test/remove_reference_test.cpp
==============================================================================
--- branches/release/libs/type_traits/test/remove_reference_test.cpp (original)
+++ branches/release/libs/type_traits/test/remove_reference_test.cpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -25,7 +25,7 @@
 BOOST_DECL_TRANSFORM_TEST(remove_reference_test_11, ::tt::remove_reference, volatile*, volatile*)
 BOOST_DECL_TRANSFORM_TEST(remove_reference_test_12, ::tt::remove_reference, const[2], const[2])
 BOOST_DECL_TRANSFORM_TEST(remove_reference_test_13, ::tt::remove_reference, (&)[2], [2])
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
 BOOST_DECL_TRANSFORM_TEST3(remove_reference_test_3a, ::tt::remove_reference, &&)
 BOOST_DECL_TRANSFORM_TEST(remove_reference_test_5a, ::tt::remove_reference, const &&, const)
 BOOST_DECL_TRANSFORM_TEST3(remove_reference_test_8a, ::tt::remove_reference, &&)
@@ -48,7 +48,7 @@
    remove_reference_test_11();
    remove_reference_test_12();
    remove_reference_test_13();
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
    remove_reference_test_3a();
    remove_reference_test_5a();
    remove_reference_test_8a();

Modified: branches/release/libs/type_traits/test/test.hpp
==============================================================================
--- branches/release/libs/type_traits/test/test.hpp (original)
+++ branches/release/libs/type_traits/test/test.hpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -260,7 +260,7 @@
 {
    nothrow_copy_UDT();
    nothrow_copy_UDT(const nothrow_copy_UDT&)throw();
- ~nothrow_copy_UDT(){};
+ ~nothrow_copy_UDT(){}
    nothrow_copy_UDT& operator=(const nothrow_copy_UDT&);
    bool operator==(const nothrow_copy_UDT&)const
    { return true; }

Modified: branches/release/libs/type_traits/test/tricky_add_pointer_test.cpp
==============================================================================
--- branches/release/libs/type_traits/test/tricky_add_pointer_test.cpp (original)
+++ branches/release/libs/type_traits/test/tricky_add_pointer_test.cpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -18,7 +18,7 @@
 BOOST_DECL_TRANSFORM_TEST(add_pointer_test_9, ::tt::add_pointer, const &, const*)
 BOOST_DECL_TRANSFORM_TEST(add_pointer_test_12, ::tt::add_pointer, const[2][3], const (*)[2][3])
 BOOST_DECL_TRANSFORM_TEST(add_pointer_test_13, ::tt::add_pointer, (&)[2], (*)[2])
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
 BOOST_DECL_TRANSFORM_TEST(add_pointer_test_5a, ::tt::add_pointer, const &&, const*)
 BOOST_DECL_TRANSFORM_TEST(add_pointer_test_6a, ::tt::add_pointer, &&, *)
 BOOST_DECL_TRANSFORM_TEST(add_pointer_test_9a, ::tt::add_pointer, const &&, const*)
@@ -33,7 +33,7 @@
    add_pointer_test_9();
    add_pointer_test_12();
    add_pointer_test_13();
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
    add_pointer_test_5a();
    add_pointer_test_6a();
    add_pointer_test_9a();

Modified: branches/release/libs/type_traits/test/tricky_function_type_test.cpp
==============================================================================
--- branches/release/libs/type_traits/test/tricky_function_type_test.cpp (original)
+++ branches/release/libs/type_traits/test/tricky_function_type_test.cpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -97,6 +97,13 @@
 typedef void (test_abc1::*vproc3)(int, char, long, long, ...)const;
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_member_function_pointer<vproc3>::value, true);
 
+BOOST_CHECK_INTEGRAL_CONSTANT((::tt::is_convertible<int(), int()>::value), false);
+BOOST_CHECK_INTEGRAL_CONSTANT((::tt::is_convertible<int(), int(*)()>::value), true);
+BOOST_CHECK_INTEGRAL_CONSTANT((::tt::is_convertible<int(), int(* const)()>::value), true);
+BOOST_CHECK_INTEGRAL_CONSTANT((::tt::is_convertible<int(), int(* volatile)()>::value), true);
+BOOST_CHECK_INTEGRAL_CONSTANT((::tt::is_convertible<int(), int(* const volatile)()>::value), true);
+BOOST_CHECK_INTEGRAL_CONSTANT((::tt::is_convertible<int(), int(&)()>::value), true);
+
 TT_TEST_END
 
 

Modified: branches/release/libs/type_traits/test/tricky_partial_spec_test.cpp
==============================================================================
--- branches/release/libs/type_traits/test/tricky_partial_spec_test.cpp (original)
+++ branches/release/libs/type_traits/test/tricky_partial_spec_test.cpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -63,7 +63,7 @@
 BOOST_CHECK_INTEGRAL_CONSTANT((::tt::is_base_of<Base&,Derived&>::value), false);
 BOOST_CHECK_INTEGRAL_CONSTANT((::tt::is_base_of<Base,Derived&>::value), false);
 BOOST_CHECK_INTEGRAL_CONSTANT((::tt::is_base_of<Base,void>::value), false);
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
 BOOST_CHECK_INTEGRAL_CONSTANT((::tt::is_base_of<Base&&,Derived>::value), false);
 BOOST_CHECK_INTEGRAL_CONSTANT((::tt::is_base_of<Base&&,Derived&&>::value), false);
 BOOST_CHECK_INTEGRAL_CONSTANT((::tt::is_base_of<Base,Derived&&>::value), false);

Modified: branches/release/libs/type_traits/test/tricky_rvalue_test.cpp
==============================================================================
--- branches/release/libs/type_traits/test/tricky_rvalue_test.cpp (original)
+++ branches/release/libs/type_traits/test/tricky_rvalue_test.cpp 2012-12-10 13:11:39 EST (Mon, 10 Dec 2012)
@@ -9,17 +9,21 @@
 #ifdef TEST_STD
 # include <type_traits>
 #else
+# include <boost/type_traits/is_convertible.hpp>
 # include <boost/type_traits/is_lvalue_reference.hpp>
 # include <boost/type_traits/is_rvalue_reference.hpp>
 # include <boost/type_traits/is_reference.hpp>
+# include <boost/type_traits/is_function.hpp>
 #endif
 
 TT_TEST_BEGIN(rvalue_reference_test)
 
-#ifndef BOOST_NO_RVALUE_REFERENCES
+#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_reference<int (&&)(int)>::value, true);
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_rvalue_reference<int (&)(int)>::value, false);
 BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_rvalue_reference<int (&&)(int)>::value, true);
+BOOST_CHECK_INTEGRAL_CONSTANT((::tt::is_convertible<int&&, int&>::value), false);
+BOOST_CHECK_INTEGRAL_CONSTANT((::tt::is_convertible<int(), int(&&)()>::value), true);
 #endif
 
 TT_TEST_END


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