patch 8.2.1073: Vim9: no line break allowed in () expression
Problem: Vim9: no line break allowed in () expression.
Solution: Skip a line break.
diff --git a/src/eval.c b/src/eval.c
index e1a33df..86d81fa 100644
--- a/src/eval.c
+++ b/src/eval.c
@@ -2453,6 +2453,9 @@
if (op == '.' && *(*arg + 1) == '.') // .. string concatenation
++*arg;
*arg = skipwhite(*arg + 1);
+ eval_next_non_blank(*arg, evalarg, &getnext);
+ if (getnext)
+ *arg = eval_next_line(evalarg);
if (eval6(arg, &var2, evalarg, op == '.') == FAIL)
{
clear_tv(rettv);
@@ -2890,8 +2893,18 @@
* nested expression: (expression).
*/
case '(': {
+ int getnext;
+
*arg = skipwhite(*arg + 1);
+ eval_next_non_blank(*arg, evalarg, &getnext);
+ if (getnext)
+ *arg = eval_next_line(evalarg);
+
ret = eval1(arg, rettv, evalarg); // recursive!
+
+ eval_next_non_blank(*arg, evalarg, &getnext);
+ if (getnext)
+ *arg = eval_next_line(evalarg);
if (**arg == ')')
++*arg;
else if (ret == OK)