# HG changeset patch # User Bram Moolenaar # Date 1597431605 -7200 # Node ID 1344d45ca6f29584697ca526da866cc39a2493ea # Parent d397f470886240ecf50f70d925c1106b837574de patch 8.2.1450: Vim9: no check that script-local items don't become global Commit: https://github.com/vim/vim/commit/7d6997015d533604f18756e59b4a2a1266a66a97 Author: Bram Moolenaar Date: Fri Aug 14 20:52:28 2020 +0200 patch 8.2.1450: Vim9: no check that script-local items don't become global Problem: Vim9: no check that script-local items don't become global. Solution: Add a test. diff --git a/src/testdir/test_vim9_script.vim b/src/testdir/test_vim9_script.vim --- a/src/testdir/test_vim9_script.vim +++ b/src/testdir/test_vim9_script.vim @@ -3039,6 +3039,42 @@ def Test_source_vim9_from_legacy() delete('Xvim9_script.vim') enddef +func Test_vim9script_not_global() + " check that items defined in Vim9 script are script-local, not global + let vim9lines =<< trim END + vim9script + let var = 'local' + func TheFunc() + echo 'local' + endfunc + def DefFunc() + echo 'local' + enddef + END + call writefile(vim9lines, 'Xvim9script.vim') + source Xvim9script.vim + try + echo g:var + assert_report('did not fail') + catch /E121:/ + " caught + endtry + try + call TheFunc() + assert_report('did not fail') + catch /E117:/ + " caught + endtry + try + call DefFunc() + assert_report('did not fail') + catch /E117:/ + " caught + endtry + + call delete('Xvim9script.vium') +endfunc + def Test_vim9_copen() # this was giving an error for setting w:quickfix_title copen diff --git a/src/version.c b/src/version.c --- a/src/version.c +++ b/src/version.c @@ -755,6 +755,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 1450, +/**/ 1449, /**/ 1448,