mirror of
https://github.com/boostorg/intrusive.git
synced 2025-08-03 14:34:44 +02:00
Merged from trunk
[SVN r78115]
This commit is contained in:
@@ -10,7 +10,7 @@
|
|||||||
|
|
||||||
// sample.h
|
// sample.h
|
||||||
|
|
||||||
#if !BOOST_PP_IS_ITERATING
|
#if !defined(BOOST_PP_IS_ITERATING)
|
||||||
|
|
||||||
#ifndef BOOST_INTRUSIVE_DETAIL_HAS_MEMBER_FUNCTION_CALLABLE_WITH_DETAILS_INCLUDED
|
#ifndef BOOST_INTRUSIVE_DETAIL_HAS_MEMBER_FUNCTION_CALLABLE_WITH_DETAILS_INCLUDED
|
||||||
#define BOOST_INTRUSIVE_DETAIL_HAS_MEMBER_FUNCTION_CALLABLE_WITH_DETAILS_INCLUDED
|
#define BOOST_INTRUSIVE_DETAIL_HAS_MEMBER_FUNCTION_CALLABLE_WITH_DETAILS_INCLUDED
|
||||||
@@ -113,7 +113,7 @@
|
|||||||
};
|
};
|
||||||
//!
|
//!
|
||||||
|
|
||||||
#if !defined(_MSC_VER) || (_MSC_VER != 1600)
|
#if !defined(_MSC_VER) || (_MSC_VER < 1600)
|
||||||
|
|
||||||
#if defined(BOOST_INTRUSIVE_DETAIL_HAS_MEMBER_FUNCTION_CALLABLE_WITH_0_ARGS_UNSUPPORTED)
|
#if defined(BOOST_INTRUSIVE_DETAIL_HAS_MEMBER_FUNCTION_CALLABLE_WITH_0_ARGS_UNSUPPORTED)
|
||||||
|
|
||||||
@@ -126,7 +126,7 @@
|
|||||||
static const bool value = true;
|
static const bool value = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
#else
|
#else //defined(BOOST_INTRUSIVE_DETAIL_HAS_MEMBER_FUNCTION_CALLABLE_WITH_0_ARGS_UNSUPPORTED)
|
||||||
|
|
||||||
//Special case for 0 args
|
//Special case for 0 args
|
||||||
template< class F
|
template< class F
|
||||||
@@ -162,7 +162,7 @@
|
|||||||
static const bool value = sizeof(Test< Fun >(0))
|
static const bool value = sizeof(Test< Fun >(0))
|
||||||
== sizeof(boost_intrusive_has_member_function_callable_with::yes_type);
|
== sizeof(boost_intrusive_has_member_function_callable_with::yes_type);
|
||||||
};
|
};
|
||||||
#endif
|
#endif //defined(BOOST_INTRUSIVE_DETAIL_HAS_MEMBER_FUNCTION_CALLABLE_WITH_0_ARGS_UNSUPPORTED)
|
||||||
|
|
||||||
#else //#if !defined(_MSC_VER) || (_MSC_VER != 1600)
|
#else //#if !defined(_MSC_VER) || (_MSC_VER != 1600)
|
||||||
template<typename Fun>
|
template<typename Fun>
|
||||||
|
@@ -251,6 +251,13 @@ struct type_rebinder<Ptr<T, Tn...>, U, 0u >
|
|||||||
typedef Ptr<U, Tn...> type;
|
typedef Ptr<U, Tn...> type;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
//Needed for non-conforming compilers like GCC 4.3
|
||||||
|
template <template <class> class Ptr, typename T, class U>
|
||||||
|
struct type_rebinder<Ptr<T>, U, 0u >
|
||||||
|
{
|
||||||
|
typedef Ptr<U> type;
|
||||||
|
};
|
||||||
|
|
||||||
#else //C++03 compilers
|
#else //C++03 compilers
|
||||||
|
|
||||||
#define BOOST_PP_LOCAL_MACRO(n) \
|
#define BOOST_PP_LOCAL_MACRO(n) \
|
||||||
|
Reference in New Issue
Block a user