1 // (C) Copyright John Maddock 2001.
2 // Use, modification and distribution are subject to the
3 // Boost Software License, Version 1.0. (See accompanying file
4 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
6 // See http://www.boost.org/libs/config for most recent version.
8 // MACRO: BOOST_FUNCTION_SCOPE_USING_DECLARATION_BREAKS_ADL
10 // DESCRIPTION: Using declarations break argument dependent lookup
11 // (probably Borland specific), the fix is to use
12 // using namespace whatever; rather than
13 // using whatever::symbol;.
39 T* get_pointer(user_ns::Y<T>)
45 // use this as a workaround:
46 //using namespace boost;
47 // this statement breaks ADL:
48 using boost_ns::get_pointer; // conforming compilers require
49 // this one to find the auto_ptr
51 return get_pointer(x) == 0;
55 namespace boost_function_scope_using_declaration_breaks_adl{
62 i = user_ns::f(boost_ns::inner2::X<int>());