Definitional problems with elaborated-type-specifiers
6.5.6 [basic.lookup.elab]
Clark Nelson

Created on 2000-10-26.00:00:00 last changed 161 months ago


Date: 2003-04-15.00:00:00

[Voted into WP at April 2003 meeting.]

Date: 2002-10-15.00:00:00

Proposed resolution (October 2002):

As given in N1376=02-0034.

Date: 2002-04-15.00:00:00

Notes from the 4/02 meeting:

This will be consolidated with the changes for issue 245.

Date: 2001-04-15.00:00:00

Notes from 04/01 meeting:

The consensus was in favor of moving the typename forms out of the elaborated-type-specifier grammar.

Date: 2001-05-20.00:00:00
  1. 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

            class-key identifier ;

    However, the grammar for elaborated-type-specifier does not include a semicolon.

  2. In both 6.5.6 [basic.lookup.elab] and [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.)

Date User Action Args
2008-10-05 00:00:00adminsetstatus: wp -> cd1
2003-04-25 00:00:00adminsetmessages: + msg858
2003-04-25 00:00:00adminsetstatus: ready -> wp
2002-11-08 00:00:00adminsetstatus: review -> ready
2002-05-10 00:00:00adminsetmessages: + msg620
2002-05-10 00:00:00adminsetstatus: drafting -> review
2002-03-11 00:00:00adminsetmessages: + msg585
2001-05-20 00:00:00adminsetmessages: + msg491
2001-05-20 00:00:00adminsetstatus: open -> drafting
2000-10-26 00:00:00admincreate