Created on 2010-08-03.00:00:00 last changed 96 months ago
[Voted into the WP at the November, 2010 meeting.]
Proposed resolution (August, 2010):
Change 188.8.131.52 [temp.dep.type] paragraph 1 as follows:
In the definition of a class template, a nested class of a class template, a member of a class template, or a member of a nested class of a class template, aname refers to the current instantiation if it is
the injected-class-name (Clause 11 [class]) of the class template or nested class,
in the definition of a primary class template , the name of the class template followed by the template argument list of the primary template (as described below) enclosed in <>,
in the definition of a nested class of a class template, the name of the nested class referenced as a member of the current instantiation, or
in the definition of a partial specialization , the name of the class template followed by the template argument list of the partial specialization enclosed in <>. If the nth template parameter is a parameter pack, the nth template argument is a pack expansion (13.7.4 [temp.variadic]) whose pattern is the name of the parameter pack.
The current rules for determining whether a name refers to the current instantiation, given in 184.108.40.206 [temp.dep.type] paragraph 1, do not cover the case when a template-id matching a primary template or partial specialization appears in the definition of a member of the template.
|2014-03-03 00:00:00||admin||set||status: fdis -> c++11|
|2011-04-10 00:00:00||admin||set||status: dr -> fdis|
|2010-11-29 00:00:00||admin||set||messages: + msg3204|
|2010-11-29 00:00:00||admin||set||status: ready -> dr|
|2010-08-23 00:00:00||admin||set||messages: + msg2813|