Mercurial > vim
changeset 22214:efa1511a5bf3 v8.2.1656
patch 8.2.1656: Vim9: callstack wrong if :def function calls :def function
Commit: https://github.com/vim/vim/commit/dfa3d5524e816c1ff7f603f9f3b7703a53a0f822
Author: Bram Moolenaar <Bram@vim.org>
Date: Thu Sep 10 22:05:08 2020 +0200
patch 8.2.1656: Vim9: callstack wrong if :def function calls :def function
Problem: Vim9: callstack wrong if :def function calls :def function.
Solution: Set the line number before calling. (closes https://github.com/vim/vim/issues/6914)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Thu, 10 Sep 2020 22:15:03 +0200 |
parents | 77d2faafb9c6 |
children | c22b939fc581 |
files | src/testdir/test_vim9_func.vim src/version.c src/vim9execute.c |
diffstat | 3 files changed, 23 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/src/testdir/test_vim9_func.vim +++ b/src/testdir/test_vim9_func.vim @@ -1776,5 +1776,25 @@ def Test_restore_modifiers() assert_equal('', g:ei_after) enddef +def StackTop() + eval 1 + eval 2 + # call not on fourth line + StackBot() +enddef + +def StackBot() + # throw an error + eval [][0] +enddef + +def Test_callstack_def() + try + StackTop() + catch + assert_match('Test_callstack_def\[2\]..StackTop\[4\]..StackBot, line 2', v:throwpoint) + endtry +enddef + " vim: ts=8 sw=2 sts=2 expandtab tw=80 fdm=marker