0
0
mirror of https://github.com/vim/vim.git synced 2025-09-23 03:43:49 -04:00

patch 8.2.1073: Vim9: no line break allowed in () expression

Problem:    Vim9: no line break allowed in () expression.
Solution:   Skip a line break.
This commit is contained in:
Bram Moolenaar
2020-06-27 20:46:29 +02:00
parent a0a0c4147f
commit 7a4981b936
3 changed files with 28 additions and 0 deletions

View File

@@ -2453,6 +2453,9 @@ eval5(char_u **arg, typval_T *rettv, evalarg_T *evalarg)
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 @@ eval7(
* 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)