[clang] Hints for fold_expression_bad_operand insert parentheses at incorrect location (original) (raw)
template<int... args> int foo() { return (args + 1 + ...); }
Actual behaviour:
The right parenthesis is inserted before 1
/tmp/test.cpp:3:18: error: expression not permitted as operand
of fold expression
3 | return (args + 1 + ...);
| ~~~~~^~~
| ( )
1 error generated.
-->
return ((args + )1 + ...);
Expected behaviour:
The right parenthesis should be inserted after 1
/tmp/test.cpp:3:18: error: expression not permitted as operand
of fold expression
3 | return (args + 1 + ...);
| ~~~~~^~~
| ( )
1 error generated.
-->
return ((args + 1) + ...);