From: Bram Moolenaar Date: Mon, 29 Nov 2021 16:01:49 +0000 (+0000) Subject: patch 8.2.3696: Vim9: error for invalid assignment when skipping X-Git-Tag: v8.2.3696 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=7f2c34166402740a661131d6341bbf874bdb3d48;p=vim patch 8.2.3696: Vim9: error for invalid assignment when skipping Problem: Vim9: error for invalid assignment when skipping. Solution: Do not check white space when skipping. (closes #9243) --- diff --git a/src/evalvars.c b/src/evalvars.c index 9124848c0..434210031 100644 --- a/src/evalvars.c +++ b/src/evalvars.c @@ -881,7 +881,7 @@ ex_let(exarg_T *eap) else ++expr; - if (vim9script && (!VIM_ISWHITE(*argend) + if (vim9script && !eap->skip && (!VIM_ISWHITE(*argend) || !IS_WHITE_OR_NUL(*expr))) { vim_strncpy(op, expr - len, len); diff --git a/src/testdir/test_vim9_assign.vim b/src/testdir/test_vim9_assign.vim index df8f486f9..394dfe663 100644 --- a/src/testdir/test_vim9_assign.vim +++ b/src/testdir/test_vim9_assign.vim @@ -1854,6 +1854,12 @@ def Test_unlet() 'var ll = [1, 2]', 'unlet ll[0: 1]', ], 'E1004:', 2) + # command recognized as assignment when skipping, should not give an error + CheckScriptSuccess([ + 'vim9script', + 'for i in []', + " put =''", + 'endfor']) CheckDefFailure([ 'var ll = [1, 2]', diff --git a/src/version.c b/src/version.c index e4c85892f..954ea5b4f 100644 --- a/src/version.c +++ b/src/version.c @@ -757,6 +757,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 3696, /**/ 3695, /**/