Syntactic nonterminal for operand of alignas
9.12.1 [dcl.attr.grammar]
Richard Smith

Created on 2013-05-26.00:00:00 last changed 81 months ago


Date: 2014-02-15.00:00:00

[Moved to DR at the February, 2014 meeting.]

Date: 2013-11-15.00:00:00

Proposed resolution (November, 2013):

  1. Change 9.12.1 [dcl.attr.grammar] paragraph 1 as follows:

    • alignment-specifier:
        alignas ( type-id ...opt )
        alignas ( assignment-expression constant-expression ...opt )
  2. Change 9.12.2 [dcl.align] paragraph 2 as follows:

  3. When the alignment-specifier is of the form alignas( assignment-expression constant-expression ):

    • the assignment-expression constant-expression shall be an integral constant expression

Date: 2013-05-26.00:00:00

Issue 1323 dealt with correcting the specification of the operand of alignas, which was originally given as the nonexistent term alignment-expression. It was corrected editorially to match the use of assignment-expression in 9.12.2 [dcl.align].

In 9.12.2 [dcl.align] paragraph 2, the expression is semantically constrained to be an integral constant expression. Since a constant-expression is syntactically a conditional-expression rather than an assignment-expression, it would probably make sense to change the syntactic nonterminal for the operand of alignas to be either a constant-expression or a conditional-expression.

Date User Action Args
2014-11-24 00:00:00adminsetstatus: dr -> c++14
2014-03-03 00:00:00adminsetmessages: + msg4949
2014-03-03 00:00:00adminsetstatus: tentatively ready -> dr
2014-01-20 00:00:00adminsetmessages: + msg4729
2014-01-20 00:00:00adminsetstatus: drafting -> tentatively ready
2013-10-14 00:00:00adminsetstatus: open -> drafting
2013-05-26 00:00:00admincreate