Skip to content

CWG3183 [expr.call] There are no expressions in an expression-list #886

Description

@Endilll

Consider [expr.call]/7:

The postfix-expression is sequenced before each expression in the expression-list and any default argument. [. . .]

The problem is that expression-list is defined as initializer-list, which contains initializer-clauses and not expressions. Maybe we should consider retiring expression-list as a grammar non-terminal to avoid confusion. It's been defined in terms of initializer-list since C++11.

Proposed resolution

Change [expr.call] paragraph 7 as follows:

The postfix-expression is sequenced before each expressioninitializer-clause in the expression-list and any default argument.

Alternatively, we can use regular font for "expression", like we do in many other places in the wording when expression-list is discussed.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions