The text in 6.5.6 [basic.lookup.elab] paragraph 2 twice
refers to the possibility that an elaborated-type-specifier
might have the form However, the grammar for elaborated-type-specifier does
not include a semicolon. In both 6.5.6 [basic.lookup.elab] and
9.2.9.5 [dcl.type.elab], the text asserts that an
elaborated-type-specifier that refers to a typedef-name
is ill-formed. However, it is permissible for the form of
elaborated-type-specifier that begins with typename
to refer to a typedef-name. This problem is the result of adding the typename form
to the elaborated-type-name grammar without changing the
verbiage correspondingly. It could be fixed either by updating the
verbiage or by moving the typename syntax into its own
production and referring to both nonterminals when needed. (See also issue 180. If this
issue is resolved in favor of a separate nonterminal in the
grammar for the typename forms, the wording in that
issue's resolution must be changed accordingly.)
class-key identifier ;