To: vim_dev@googlegroups.com Subject: Patch 8.2.1391 Fcc: outbox From: Bram Moolenaar Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ------------ Patch 8.2.1391 Problem: Vim9: no error for shadowing a script function. Solution: Check for already defined items. (closes #6652) Files: src/vim9compile.c, src/testdir/test_vim9_script.vim *** ../vim-8.2.1390/src/vim9compile.c 2020-08-07 21:28:31.282166014 +0200 --- src/vim9compile.c 2020-08-07 21:56:30.724291359 +0200 *************** *** 5462,5467 **** --- 5462,5469 ---- semsg(_(e_unknown_var), name); goto theend; } + else if (check_defined(var_start, varlen, cctx) == FAIL) + goto theend; } } *** ../vim-8.2.1390/src/testdir/test_vim9_script.vim 2020-08-07 21:28:31.282166014 +0200 --- src/testdir/test_vim9_script.vim 2020-08-07 21:58:48.783811692 +0200 *************** *** 1780,1785 **** --- 1780,1797 ---- enddef END CheckScriptFailure(lines, 'E1073:') + + lines =<< trim END + vim9script + def Foo(): string + return 'foo' + enddef + def Func() + let Foo = {-> 'lambda'} + enddef + defcompile + END + CheckScriptFailure(lines, 'E1073:') enddef def Test_fixed_size_list() *** ../vim-8.2.1390/src/version.c 2020-08-07 21:28:31.282166014 +0200 --- src/version.c 2020-08-07 21:59:49.319605278 +0200 *************** *** 756,757 **** --- 756,759 ---- { /* Add new patch number below this line */ + /**/ + 1391, /**/ -- hundred-and-one symptoms of being an internet addict: 146. You experience ACTUAL physical withdrawal symptoms when away from your 'puter and the net. /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\ /// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\ \\\ an exciting new programming language -- http://www.Zimbu.org /// \\\ help me help AIDS victims -- http://ICCF-Holland.org ///