Avoid exposing functions via ADL.

I'd put the iterators in their own namespace so that they wouldn't pick
up functions in detail via ADL, but I forgot that their template
parameters would cause that to happen anyway. The simplest way to fix
that for now is just to stuff the problematic functions into a
sub-namespace, so that they're no longer exposed.

[SVN r85280]
This commit is contained in:
Daniel James
2013-08-10 13:09:08 +00:00
parent 29660f9c4d
commit 3508ceaa58
4 changed files with 45 additions and 34 deletions

View File

@@ -28,7 +28,10 @@ namespace boost { namespace unordered { namespace detail {
struct move_tag {};
struct empty_emplace {};
template <class T> inline void ignore_unused_variable_warning(T const&) {}
namespace func {
template <class T>
inline void ignore_unused_variable_warning(T const&) {}
}
////////////////////////////////////////////////////////////////////////////
// iterator SFINAE