Added new macro BOOST_NO_ADL_BARRIER to address issue #1712.

[SVN r43914]
This commit is contained in:
John Maddock
2008-03-28 17:03:42 +00:00
parent a593af70bb
commit 24c158f324
11 changed files with 179 additions and 997 deletions

View File

@ -11,7 +11,7 @@
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"> <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr> <table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td> <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
<td align="center"><a href="../../../../../index.htm">Home</a></td> <td align="center"><a href="../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../libs/libraries.htm">Libraries</a></td> <td align="center"><a href="../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/people/people.htm">People</a></td> <td align="center"><a href="http://www.boost.org/people/people.htm">People</a></td>
<td align="center"><a href="http://www.boost.org/more/faq.htm">FAQ</a></td> <td align="center"><a href="http://www.boost.org/more/faq.htm">FAQ</a></td>

File diff suppressed because it is too large Load Diff

View File

@ -12,7 +12,7 @@
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"> <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr> <table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td> <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
<td align="center"><a href="../../../../../index.htm">Home</a></td> <td align="center"><a href="../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../libs/libraries.htm">Libraries</a></td> <td align="center"><a href="../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/people/people.htm">People</a></td> <td align="center"><a href="http://www.boost.org/people/people.htm">People</a></td>
<td align="center"><a href="http://www.boost.org/more/faq.htm">FAQ</a></td> <td align="center"><a href="http://www.boost.org/more/faq.htm">FAQ</a></td>

View File

@ -12,7 +12,7 @@
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"> <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr> <table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td> <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
<td align="center"><a href="../../../../../index.htm">Home</a></td> <td align="center"><a href="../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../libs/libraries.htm">Libraries</a></td> <td align="center"><a href="../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/people/people.htm">People</a></td> <td align="center"><a href="http://www.boost.org/people/people.htm">People</a></td>
<td align="center"><a href="http://www.boost.org/more/faq.htm">FAQ</a></td> <td align="center"><a href="http://www.boost.org/more/faq.htm">FAQ</a></td>

View File

@ -10,7 +10,7 @@
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"> <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr> <table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../boost.png"></td> <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../boost.png"></td>
<td align="center"><a href="../../../../index.htm">Home</a></td> <td align="center"><a href="../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../libs/libraries.htm">Libraries</a></td> <td align="center"><a href="../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/people/people.htm">People</a></td> <td align="center"><a href="http://www.boost.org/people/people.htm">People</a></td>
<td align="center"><a href="http://www.boost.org/more/faq.htm">FAQ</a></td> <td align="center"><a href="http://www.boost.org/more/faq.htm">FAQ</a></td>
@ -28,7 +28,7 @@
</h3></div></div></div> </h3></div></div></div>
<div><p class="copyright">Copyright <20> 2001 -2007 Beman Dawes, Vesa Karvonen, John Maddock</p></div> <div><p class="copyright">Copyright <20> 2001 -2007 Beman Dawes, Vesa Karvonen, John Maddock</p></div>
<div><div class="legalnotice"> <div><div class="legalnotice">
<a name="id435855"></a><p> <a name="id437611"></a><p>
Distributed under the Boost Software License, Version 1.0. (See accompanying Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>) file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p> </p>
@ -958,7 +958,7 @@
</p> </p>
</div> </div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr> <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"><p><small>Last revised: February 21, 2008 at 16:56:38 GMT</small></p></td> <td align="left"><p><small>Last revised: March 28, 2008 at 17:01:32 GMT</small></p></td>
<td align="right"><div class="copyright-footer"></div></td> <td align="right"><div class="copyright-footer"></div></td>
</tr></table> </tr></table>
<hr> <hr>

View File

@ -38,6 +38,10 @@ symbol being looked up in the current scope. For example, using
in namespaces nested inside boost (but not elsewhere). Probably in namespaces nested inside boost (but not elsewhere). Probably
Borland specific. Borland specific.
]] ]]
[[`BOOST_NO_ADL_BARRIER`][Compiler][
The compiler locates and searches namespaces that it should /*not*/ in fact
search when performing argument dependent lookup.]
]]
[[`BOOST_NO_ARGUMENT_DEPENDENT_LOOKUP`][Compiler][ [[`BOOST_NO_ARGUMENT_DEPENDENT_LOOKUP`][Compiler][
Compiler does not implement argument-dependent lookup (also named Compiler does not implement argument-dependent lookup (also named
Koenig lookup); see std::3.4.2 \[basic.koenig.lookup\] Koenig lookup); see std::3.4.2 \[basic.koenig.lookup\]

View File

@ -67,6 +67,7 @@
# endif # endif
# if (__SUNPRO_CC <= 0x580) # if (__SUNPRO_CC <= 0x580)
# define BOOST_NO_IS_ABSTRACT # define BOOST_NO_IS_ABSTRACT
# define BOOST_NO_ADL_BARRIER
# endif # endif
// //

View File

@ -83,6 +83,11 @@
# define BOOST_NO_TWO_PHASE_NAME_LOOKUP # define BOOST_NO_TWO_PHASE_NAME_LOOKUP
#endif #endif
#if _MSC_VER == 1500 // 1500 == VC++ 9.0
// A bug in VC9:
# define BOOST_NO_ADL_BARRIER
#endif
#ifndef _NATIVE_WCHAR_T_DEFINED #ifndef _NATIVE_WCHAR_T_DEFINED
# define BOOST_NO_INTRINSIC_WCHAR_T # define BOOST_NO_INTRINSIC_WCHAR_T
#endif #endif

View File

@ -1,7 +1,7 @@
# #
# Regression test Jamfile for boost configuration setup. # Regression test Jamfile for boost configuration setup.
# *** DO NOT EDIT THIS FILE BY HAND *** # *** DO NOT EDIT THIS FILE BY HAND ***
# This file was automatically generated on Fri Oct 19 13:34:11 2007 # This file was automatically generated on Fri Mar 28 16:52:14 2008
# by libs/config/tools/generate.cpp # by libs/config/tools/generate.cpp
# Copyright John Maddock. # Copyright John Maddock.
# Use, modification and distribution are subject to the # Use, modification and distribution are subject to the
@ -173,6 +173,9 @@ test-suite "BOOST_MSVC_STD_ITERATOR" :
test-suite "BOOST_HAS_WINTHREADS" : test-suite "BOOST_HAS_WINTHREADS" :
[ run has_winthreads_pass.cpp ] [ run has_winthreads_pass.cpp ]
[ compile-fail has_winthreads_fail.cpp ] ; [ compile-fail has_winthreads_fail.cpp ] ;
test-suite "BOOST_NO_ADL_BARRIER" :
[ run no_adl_barrier_pass.cpp ]
[ compile-fail no_adl_barrier_fail.cpp ] ;
test-suite "BOOST_NO_ARGUMENT_DEPENDENT_LOOKUP" : test-suite "BOOST_NO_ARGUMENT_DEPENDENT_LOOKUP" :
[ run no_arg_dep_lookup_pass.cpp ] [ run no_arg_dep_lookup_pass.cpp ]
[ compile-fail no_arg_dep_lookup_fail.cpp ] ; [ compile-fail no_arg_dep_lookup_fail.cpp ] ;

View File

@ -952,6 +952,7 @@ void print_boost_macros()
PRINT_MACRO(BOOST_HAS_WINTHREADS); PRINT_MACRO(BOOST_HAS_WINTHREADS);
PRINT_MACRO(BOOST_MSVC6_MEMBER_TEMPLATES); PRINT_MACRO(BOOST_MSVC6_MEMBER_TEMPLATES);
PRINT_MACRO(BOOST_MSVC_STD_ITERATOR); PRINT_MACRO(BOOST_MSVC_STD_ITERATOR);
PRINT_MACRO(BOOST_NO_ADL_BARRIER);
PRINT_MACRO(BOOST_NO_ARGUMENT_DEPENDENT_LOOKUP); PRINT_MACRO(BOOST_NO_ARGUMENT_DEPENDENT_LOOKUP);
PRINT_MACRO(BOOST_NO_ARRAY_TYPE_SPECIALIZATIONS); PRINT_MACRO(BOOST_NO_ARRAY_TYPE_SPECIALIZATIONS);
PRINT_MACRO(BOOST_NO_AUTO_PTR); PRINT_MACRO(BOOST_NO_AUTO_PTR);
@ -1019,6 +1020,7 @@ void print_boost_macros()
// END GENERATED BLOCK // END GENERATED BLOCK
PRINT_MACRO(BOOST_INTEL); PRINT_MACRO(BOOST_INTEL);

View File

@ -1,4 +1,4 @@
// This file was automatically generated on Fri Oct 19 13:34:11 2007 // This file was automatically generated on Fri Mar 28 16:52:14 2008
// by libs/config/tools/generate.cpp // by libs/config/tools/generate.cpp
// Copyright John Maddock 2002-4. // Copyright John Maddock 2002-4.
// Use, modification and distribution are subject to the // Use, modification and distribution are subject to the
@ -22,6 +22,11 @@
int error_count = 0; int error_count = 0;
#ifndef BOOST_NO_ADL_BARRIER
#include "boost_no_adl_barrier.ipp"
#else
namespace boost_no_adl_barrier = empty_boost;
#endif
#ifndef BOOST_NO_ARGUMENT_DEPENDENT_LOOKUP #ifndef BOOST_NO_ARGUMENT_DEPENDENT_LOOKUP
#include "boost_no_arg_dep_lookup.ipp" #include "boost_no_arg_dep_lookup.ipp"
#else #else
@ -841,6 +846,11 @@ int main( int, char *[] )
std::cerr << "Failed test for BOOST_HAS_WINTHREADS at: " << __FILE__ << ":" << __LINE__ << std::endl; std::cerr << "Failed test for BOOST_HAS_WINTHREADS at: " << __FILE__ << ":" << __LINE__ << std::endl;
++error_count; ++error_count;
} }
if(0 != boost_no_adl_barrier::test())
{
std::cerr << "Failed test for BOOST_NO_ADL_BARRIER at: " << __FILE__ << ":" << __LINE__ << std::endl;
++error_count;
}
if(0 != boost_no_argument_dependent_lookup::test()) if(0 != boost_no_argument_dependent_lookup::test())
{ {
std::cerr << "Failed test for BOOST_NO_ARGUMENT_DEPENDENT_LOOKUP at: " << __FILE__ << ":" << __LINE__ << std::endl; std::cerr << "Failed test for BOOST_NO_ARGUMENT_DEPENDENT_LOOKUP at: " << __FILE__ << ":" << __LINE__ << std::endl;