diff --git a/include/boost/container/detail/dispatch_uses_allocator.hpp b/include/boost/container/detail/dispatch_uses_allocator.hpp index 343c512..c3ba2d3 100644 --- a/include/boost/container/detail/dispatch_uses_allocator.hpp +++ b/include/boost/container/detail/dispatch_uses_allocator.hpp @@ -32,6 +32,7 @@ #include #endif #include +#include namespace boost { namespace container { @@ -79,29 +80,43 @@ namespace dtl { template struct is_constructible_with_allocator_prefix - : constructible_with_allocator_prefix + : boost::container::is_constructible {}; template struct is_constructible_with_allocator_suffix - : constructible_with_allocator_suffix + : boost::container::is_constructible {}; - #else // #if !defined(BOOST_NO_CXX11_VARIADIC_TEMPLATES) +#else // !defined(BOOST_NO_CXX11_VARIADIC_TEMPLATES) - template - struct is_constructible_with_allocator_prefix + template + struct is_constructible_with_allocator_prefix; : constructible_with_allocator_prefix {}; - template - struct is_constructible_with_allocator_suffix + template + struct is_constructible_with_allocator_suffix; : constructible_with_allocator_suffix {}; - #endif // #if !defined(BOOST_NO_CXX11_VARIADIC_TEMPLATES) + #define BOOST_INTRUSIVE_IS_CONSTRUCTIBLE_WITH_ALLOCATOR(N) \ + template \ + struct is_constructible_with_allocator_prefix\ + \ + : boost::container::is_constructible\ + {};\ + \ + template \ + struct is_constructible_with_allocator_suffix\ + \ + : boost::container::is_constructible\ + {};\ + // + BOOST_MOVE_ITERATE_0TO8(BOOST_INTRUSIVE_IS_CONSTRUCTIBLE_WITH_ALLOCATOR) + #undef BOOST_INTRUSIVE_IS_CONSTRUCTIBLE_WITH_ALLOCATOR -#endif // #if !defined(BOOST_NO_SFINAE_EXPR) +#endif //if !defined(BOOST_NO_CXX11_VARIADIC_TEMPLATES) #if !defined(BOOST_NO_CXX11_VARIADIC_TEMPLATES)