From: Bram Moolenaar Date: Tue, 8 Feb 2022 19:23:35 +0000 (+0000) Subject: patch 8.2.4331: Vim9: no test for existing script variable in block X-Git-Tag: v8.2.4331 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=3a5988c025f8517ba382730dc54bb13df937edb4;p=thirdparty%2Fvim.git patch 8.2.4331: Vim9: no test for existing script variable in block Problem: Vim9: no test for existing script variable in block. Solution: Add a test. --- diff --git a/src/testdir/test_vim9_func.vim b/src/testdir/test_vim9_func.vim index ebcd0fbc8e..e68cbcf152 100644 --- a/src/testdir/test_vim9_func.vim +++ b/src/testdir/test_vim9_func.vim @@ -1028,11 +1028,35 @@ def Test_call_wrong_args() vim9script var name = 'piet' def FuncOne(name: string) - echo nr + echo name enddef END v9.CheckScriptFailure(lines, 'E1168:') + # same, inside the same block + lines =<< trim END + vim9script + if true + var name = 'piet' + def FuncOne(name: string) + echo name + enddef + endif + END + v9.CheckScriptFailure(lines, 'E1168:') + + # variable in other block is OK + lines =<< trim END + vim9script + if true + var name = 'piet' + endif + def FuncOne(name: string) + echo name + enddef + END + v9.CheckScriptSuccess(lines) + # argument name declared later is only found when compiling lines =<< trim END vim9script diff --git a/src/version.c b/src/version.c index d7da6df6e0..e0bb6e14bf 100644 --- a/src/version.c +++ b/src/version.c @@ -746,6 +746,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 4331, /**/ 4330, /**/