Created on 2001-05-01.00:00:00 last changed 197 months ago
[Voted into WP at April 2003 meeting.]
Proposed resolution (Clark Nelson, March 2002):
In 13.2 [temp.param] paragraph 3, change "A type-parameter defines its identifier to be a type-name" to "A type-parameter defines its identifier to be a typedef-name"
In 9.2.9.5 [dcl.type.elab] paragraph 2, change "If the identifier resolves to a typedef-name or a template type-parameter" to "If the identifier resolves to a typedef-name".
This has been consolidated with the edits for some other issues. See N1376=02-0034.
Although 13.2 [temp.param] paragraph 3 contains an assertion that
A type-parameter defines its identifier to be a type-name (if declared with class or typename)
the grammar in 9.2.9.3 [dcl.type.simple] paragraph 1 says that a type-name is either a class-name, an enum-name, or a typedef-name. The identifier in a template type-parameter is none of those. One possibility might be to equate the identifier with a typedef-name instead of directly with a type-name, which would have the advantage of not requiring parallel treatment of the two in situations where they are treated the same (e.g., in elaborated-type-specifiers, see issue 245). See also issue 215.
History | |||
---|---|---|---|
Date | User | Action | Args |
2008-10-05 00:00:00 | admin | set | status: wp -> cd1 |
2003-04-25 00:00:00 | admin | set | messages: + msg861 |
2003-04-25 00:00:00 | admin | set | status: ready -> wp |
2002-05-10 00:00:00 | admin | set | status: drafting -> ready |
2002-03-11 00:00:00 | admin | set | messages: + msg586 |
2001-11-09 00:00:00 | admin | set | status: open -> drafting |
2001-05-01 00:00:00 | admin | create |