This is an unofficial snapshot of the ISO/IEC JTC1 SC22 WG21 Core Issues List revision 119a. See http://www.open-std.org/jtc1/sc22/wg21/ for the official list.
2025-12-20
[Voted into the WP at the March, 2009 meeting.]
The resolution ofissue 33 added thefollowing wording in 6.5.4 [basic.lookup.argdep]:
In addition, if the argument is the name or address of a set ofoverloaded functions and/or function templates, its associated classesand namespaces are the union of those associated with each of themembers of the set: the namespace in which the function or functiontemplate is defined and the classes and namespaces associated with its(non-dependent) parameter types and return type.
This wording is self-contradictory: although it claims that thetreatment of overload sets is intended to be “the union of thoseassociated with each of the members of the set,” it says thatthe namespace of which each function or function template is a memberis to be considered an associated namespace. That is different fromthe case of a non-overloaded function argument; in that case, becauseonly thetype of the argument is considered, the namespace ofwhich the function is a member isnot an associated namespace.This should be rectified so that overloaded and unoverloaded functionsreally are treated the same.
Proposed resolution (June, 2008):
Change 6.5.4 [basic.lookup.argdep] paragraph 2 as follows:
...In addition, if the argument is the name or address of a setof overloaded functions and/or function templates, its associatedclasses and namespaces are the union of those associated witheach of the members of the set: the namespace in which thefunction or function template is defined and, i.e.,the classes and namespaces associated with its (non-dependent)parameter types and return type.