Proposed resolution:
Change the grammar in 5.1.2 [expr.prim.lambda] paragraph 1Remove from 5.1.2 [expr.prim.lambda] paragraph 4lambda-expression: lambda-introducer lambda-declaratoroptcompound-statement ... lambda-declarator: ( parameter-declaration-clause ) mutableopt exception-specificationopt attribute-specifier-seqopt trailing-return-typeopt mutableopt exception-specificationopt attribute-specifier-seqopt trailing-return-typeopt
Modify in 5.1.2 [expr.prim.lambda] paragraph 5If a lambda-expression does not include a lambda-declarator, it is as if the lambda-declarator were ().
This function call operator or operator template is declaredconst
(9.3.1) if and only if thelambda-expression's parameter-declaration-clause is not followed bylambda-declarator does not contain the keywordmutable
.