neovim

Neovim text editor
git clone https://git.dasho.dev/neovim.git
Log | Files | Refs | README

commit 3e8541f4a0d8177bf8451f7aa6387e6f04b0d963
parent 04d951685bcdfeb219e7fdc2fac8e6baf198e847
Author: zeertzjq <zeertzjq@outlook.com>
Date:   Mon, 13 Nov 2023 06:36:34 +0800

vim-patch:8.2.3003: Vim9: closure compiled with wrong compile type

Problem:    Vim9: closure compiled with wrong compile type.
Solution:   Use COMPILE_TYPE() when calling a function. (closes vim/vim#8384)

https://github.com/vim/vim/commit/968a5b62ffd3e08005d907d93eaaf807be466a88

Co-authored-by: Bram Moolenaar <Bram@vim.org>

Diffstat:
Mtest/old/testdir/test_debugger.vim | 28++++++++++++++++++++++++++++
1 file changed, 28 insertions(+), 0 deletions(-)

diff --git a/test/old/testdir/test_debugger.vim b/test/old/testdir/test_debugger.vim @@ -971,6 +971,34 @@ func Test_Backtrace_DefFunction() call delete('Xtest2.vim') endfunc +func Test_debug_def_function() + CheckRunVimInTerminal + CheckCWD + let file =<< trim END + vim9script + def g:Func() + var n: number + def Closure(): number + return n + 3 + enddef + n += Closure() + echo 'result: ' .. n + enddef + END + call writefile(file, 'Xtest.vim') + + let buf = RunVimInTerminal('-S Xtest.vim', {}) + + call RunDbgCmd(buf, + \ ':debug call Func()', + \ ['cmd: call Func()']) + call RunDbgCmd(buf, 'next', ['result: 3']) + call term_sendkeys(buf, "\r") + + call StopVimInTerminal(buf) + call delete('Xtest.vim') +endfunc + func Test_debug_backtrace_level() CheckRunVimInTerminal CheckCWD