forked from boostorg/type_traits
Fixes #2935.
Add new config macro BOOST_MSVC_FULL_VER, and updated type_traits to make use of it. [SVN r55429]
This commit is contained in:
@ -85,7 +85,7 @@ namespace detail {
|
||||
BOOST_STATIC_CONSTANT(unsigned, s1 = sizeof(has_new_operator_impl<T>::template check_sig<T>(0)));
|
||||
BOOST_STATIC_CONSTANT(unsigned, s2 = sizeof(has_new_operator_impl<T>::template check_sig2<T>(0)));
|
||||
#else
|
||||
#if BOOST_WORKAROUND(_MSC_FULL_VER, >= 140050000)
|
||||
#if BOOST_WORKAROUND(BOOST_MSVC_FULL_VER, >= 140050000)
|
||||
#pragma warning(push)
|
||||
#pragma warning(disable:6334)
|
||||
#endif
|
||||
@ -93,7 +93,7 @@ namespace detail {
|
||||
BOOST_STATIC_CONSTANT(unsigned, s1 = sizeof(check_sig<T>(0)));
|
||||
BOOST_STATIC_CONSTANT(unsigned, s2 = sizeof(check_sig2<T>(0)));
|
||||
|
||||
#if BOOST_WORKAROUND(_MSC_FULL_VER, >= 140050000)
|
||||
#if BOOST_WORKAROUND(BOOST_MSVC_FULL_VER, >= 140050000)
|
||||
#pragma warning(pop)
|
||||
#endif
|
||||
#endif
|
||||
|
@ -82,7 +82,7 @@
|
||||
# define BOOST_HAS_TYPE_TRAITS_INTRINSICS
|
||||
#endif
|
||||
|
||||
#if defined(BOOST_MSVC) && defined(_MSC_FULL_VER) && (_MSC_FULL_VER >=140050215)
|
||||
#if defined(BOOST_MSVC) && defined(BOOST_MSVC_FULL_VER) && (BOOST_MSVC_FULL_VER >=140050215)
|
||||
# include <boost/type_traits/is_same.hpp>
|
||||
|
||||
# define BOOST_IS_UNION(T) __is_union(T)
|
||||
|
@ -94,12 +94,12 @@ struct is_abstract_imp2
|
||||
#ifdef __GNUC__
|
||||
BOOST_STATIC_CONSTANT(std::size_t, s1 = sizeof(is_abstract_imp2<T>::template check_sig<T>(0)));
|
||||
#else
|
||||
#if BOOST_WORKAROUND(_MSC_FULL_VER, >= 140050000)
|
||||
#if BOOST_WORKAROUND(BOOST_MSVC_FULL_VER, >= 140050000)
|
||||
#pragma warning(push)
|
||||
#pragma warning(disable:6334)
|
||||
#endif
|
||||
BOOST_STATIC_CONSTANT(std::size_t, s1 = sizeof(check_sig<T>(0)));
|
||||
#if BOOST_WORKAROUND(_MSC_FULL_VER, >= 140050000)
|
||||
#if BOOST_WORKAROUND(BOOST_MSVC_FULL_VER, >= 140050000)
|
||||
#pragma warning(pop)
|
||||
#endif
|
||||
#endif
|
||||
|
@ -133,7 +133,7 @@ struct bd_helper
|
||||
template<typename B, typename D>
|
||||
struct is_base_and_derived_impl2
|
||||
{
|
||||
#if BOOST_WORKAROUND(_MSC_FULL_VER, >= 140050000)
|
||||
#if BOOST_WORKAROUND(BOOST_MSVC_FULL_VER, >= 140050000)
|
||||
#pragma warning(push)
|
||||
#pragma warning(disable:6334)
|
||||
#endif
|
||||
@ -156,7 +156,7 @@ struct is_base_and_derived_impl2
|
||||
|
||||
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)
|
||||
#if BOOST_WORKAROUND(BOOST_MSVC_FULL_VER, >= 140050000)
|
||||
#pragma warning(pop)
|
||||
#endif
|
||||
};
|
||||
|
@ -256,7 +256,7 @@ struct is_convertible_basic_impl
|
||||
#ifdef BOOST_MSVC
|
||||
#pragma warning(push)
|
||||
#pragma warning(disable:4244)
|
||||
#if BOOST_WORKAROUND(_MSC_FULL_VER, >= 140050000)
|
||||
#if BOOST_WORKAROUND(BOOST_MSVC_FULL_VER, >= 140050000)
|
||||
#pragma warning(disable:6334)
|
||||
#endif
|
||||
#endif
|
||||
|
@ -65,7 +65,7 @@ struct is_function_impl
|
||||
template <typename T>
|
||||
struct is_function_impl
|
||||
{
|
||||
#if BOOST_WORKAROUND(_MSC_FULL_VER, >= 140050000)
|
||||
#if BOOST_WORKAROUND(BOOST_MSVC_FULL_VER, >= 140050000)
|
||||
#pragma warning(push)
|
||||
#pragma warning(disable:6334)
|
||||
#endif
|
||||
@ -74,7 +74,7 @@ struct is_function_impl
|
||||
bool, value = sizeof(::boost::type_traits::is_function_ptr_tester(t))
|
||||
== sizeof(::boost::type_traits::yes_type)
|
||||
);
|
||||
#if BOOST_WORKAROUND(_MSC_FULL_VER, >= 140050000)
|
||||
#if BOOST_WORKAROUND(BOOST_MSVC_FULL_VER, >= 140050000)
|
||||
#pragma warning(pop)
|
||||
#endif
|
||||
};
|
||||
|
@ -64,7 +64,7 @@ struct is_mem_fun_pointer_select<false>
|
||||
{
|
||||
template <typename T> struct result_
|
||||
{
|
||||
#if BOOST_WORKAROUND(_MSC_FULL_VER, >= 140050000)
|
||||
#if BOOST_WORKAROUND(BOOST_MSVC_FULL_VER, >= 140050000)
|
||||
#pragma warning(push)
|
||||
#pragma warning(disable:6334)
|
||||
#endif
|
||||
@ -75,7 +75,7 @@ struct is_mem_fun_pointer_select<false>
|
||||
bool, value = (
|
||||
1 == sizeof(::boost::type_traits::is_mem_fun_pointer_tester(self_type::make_t))
|
||||
));
|
||||
#if BOOST_WORKAROUND(_MSC_FULL_VER, >= 140050000)
|
||||
#if BOOST_WORKAROUND(BOOST_MSVC_FULL_VER, >= 140050000)
|
||||
#pragma warning(pop)
|
||||
#endif
|
||||
};
|
||||
|
Reference in New Issue
Block a user