diff options
author | Remko Tronçon <git@el-tramo.be> | 2010-11-24 20:33:19 (GMT) |
---|---|---|
committer | Remko Tronçon <git@el-tramo.be> | 2010-11-24 20:35:17 (GMT) |
commit | 332d60c56dfaa11fdd135088279d15cd5983b3d4 (patch) | |
tree | dd77717a4e1732da929d5ff8a0471fa3f005e201 /3rdParty/Boost/src/boost/type_traits/add_reference.hpp | |
parent | 90c44a10fec26d2a0935b2d62e82b6a5be028373 (diff) | |
download | swift-contrib-332d60c56dfaa11fdd135088279d15cd5983b3d4.zip swift-contrib-332d60c56dfaa11fdd135088279d15cd5983b3d4.tar.bz2 |
Upgraded Boost to 1.45.0.
Diffstat (limited to '3rdParty/Boost/src/boost/type_traits/add_reference.hpp')
-rw-r--r-- | 3rdParty/Boost/src/boost/type_traits/add_reference.hpp | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/3rdParty/Boost/src/boost/type_traits/add_reference.hpp b/3rdParty/Boost/src/boost/type_traits/add_reference.hpp index 7dfb4be..eb4f9b1 100644 --- a/3rdParty/Boost/src/boost/type_traits/add_reference.hpp +++ b/3rdParty/Boost/src/boost/type_traits/add_reference.hpp @@ -51,13 +51,31 @@ struct add_reference_impl }; #else +// +// We can't filter out rvalue_references at the same level as +// references or we get ambiguities from msvc: +// template <typename T> -struct add_reference_impl +struct add_reference_rvalue_layer { typedef T& type; }; +#ifndef BOOST_NO_RVALUE_REFERENCES +template <typename T> +struct add_reference_rvalue_layer<T&&> +{ + typedef T&& type; +}; +#endif + +template <typename T> +struct add_reference_impl +{ + typedef typename add_reference_rvalue_layer<T>::type type; +}; + #ifndef BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION BOOST_TT_AUX_TYPE_TRAIT_IMPL_PARTIAL_SPEC1_1(typename T,add_reference,T&,T&) #endif |