This is an unofficial snapshot of the ISO/IEC JTC1 SC22 WG21 Core Issues List revision 112e. See http://www.open-std.org/jtc1/sc22/wg21/ for the official list.
[Moved to DR at the November, 2014 meeting.]
Issue 1411 added :: as a production for nested-name-specifier. However, the grammar for using-declarations should have been updated but was overlooked:
In addition, there is some verbiage in 18.104.22.168 [namespace.qual] paragraph 1 and 9.9 [namespace.udecl] paragraph 9 that should probably be revised.
Proposed resolution (October, 2014):
Change the grammar in 9.9 [namespace.udecl] paragraph 1 as follows:
Change 22.214.171.124 [namespace.qual] paragraph 1 as follows:
If the nested-name-specifier of a qualified-id nominates a namespace , the name specified after the nested-name-specifier is looked up in the scope of the namespace.
If a qualified-id starts with ::, the name after the :: is looked up in the global namespace. In either case, thenames in a template-argument of a template-id are looked up in the context in which the entire postfix-expression occurs.
Change _N4567_.5.1.1 [expr.prim.general] paragraph 10 as follows:
A ::, or anested-name-specifier that names a namespace (9.8 [basic.namespace]), in either casefollowed by the name of a member of that namespace (or the name of a member of a namespace made visible by a using-directive) is a qualified-id; 126.96.36.199 [namespace.qual] describes name lookup for namespace members that appear in qualified-ids. The result is...
Change 9.9 [namespace.udecl] paragraph 9 as follows:
Members declared by a using-declaration can be referred to by explicit qualification just like other member names (188.8.131.52 [namespace.qual]).
In a using-declaration, a prefix :: refers to the global namespace.[Example: