From 854f2e8d5db4f5bdd2a23ce71e621b5fbccbbcba Mon Sep 17 00:00:00 2001 From: Peter Dimov Date: Fri, 16 Jan 2015 21:54:16 +0200 Subject: [PATCH] Fix ambiguous 'detail' errors under msvc-8.0. --- include/boost/function/function_base.hpp | 2 +- include/boost/function/function_template.hpp | 20 ++++++++++---------- 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/include/boost/function/function_base.hpp b/include/boost/function/function_base.hpp index f3663d7..9e01ef9 100644 --- a/include/boost/function/function_base.hpp +++ b/include/boost/function/function_base.hpp @@ -294,7 +294,7 @@ namespace boost { } else if (op == destroy_functor_tag) out_buffer.func_ptr = 0; else if (op == check_functor_type_tag) { - const detail::sp_typeinfo& check_type + const boost::detail::sp_typeinfo& check_type = *out_buffer.type.type; if (BOOST_FUNCTION_COMPARE_TYPE_ID(check_type, BOOST_SP_TYPEID(Functor))) out_buffer.obj_ptr = &in_buffer.func_ptr; diff --git a/include/boost/function/function_template.hpp b/include/boost/function/function_template.hpp index 2278ea5..ab7abc5 100644 --- a/include/boost/function/function_template.hpp +++ b/include/boost/function/function_template.hpp @@ -920,10 +920,10 @@ namespace boost { template void assign_to(Functor f) { - using detail::function::vtable_base; + using boost::detail::function::vtable_base; - typedef typename detail::function::get_function_tag::type tag; - typedef detail::function::BOOST_FUNCTION_GET_INVOKER get_invoker; + typedef typename boost::detail::function::get_function_tag::type tag; + typedef boost::detail::function::BOOST_FUNCTION_GET_INVOKER get_invoker; typedef typename get_invoker:: template apply @@ -944,9 +944,9 @@ namespace boost { // coverity[pointless_expression]: suppress coverity warnings on apparant if(const). if (boost::has_trivial_copy_constructor::value && boost::has_trivial_destructor::value && - detail::function::function_allows_small_object_optimization::value) + boost::detail::function::function_allows_small_object_optimization::value) value |= static_cast(0x01); - vtable = reinterpret_cast(value); + vtable = reinterpret_cast(value); } else vtable = 0; } @@ -954,10 +954,10 @@ namespace boost { template void assign_to_a(Functor f,Allocator a) { - using detail::function::vtable_base; + using boost::detail::function::vtable_base; - typedef typename detail::function::get_function_tag::type tag; - typedef detail::function::BOOST_FUNCTION_GET_INVOKER get_invoker; + typedef typename boost::detail::function::get_function_tag::type tag; + typedef boost::detail::function::BOOST_FUNCTION_GET_INVOKER get_invoker; typedef typename get_invoker:: template apply_a::value && boost::has_trivial_destructor::value && - detail::function::function_allows_small_object_optimization::value) + boost::detail::function::function_allows_small_object_optimization::value) value |= static_cast(0x01); - vtable = reinterpret_cast(value); + vtable = reinterpret_cast(value); } else vtable = 0; }