comparison src/structs.h @ 30122:458162398682 v9.0.0397

patch 9.0.0397: :defer not tested with exceptions and ":qa!" Commit: https://github.com/vim/vim/commit/58779858fb5a82a3233af5d4237a3cece88c10d4 Author: Bram Moolenaar <Bram@vim.org> Date: Tue Sep 6 18:31:14 2022 +0100 patch 9.0.0397: :defer not tested with exceptions and ":qa!" Problem: :defer not tested with exceptions and ":qa!". Solution: Test :defer works when exceptions are thrown and when ":qa!" is used. Invoke the deferred calls on exit.
author Bram Moolenaar <Bram@vim.org>
date Tue, 06 Sep 2022 19:45:04 +0200
parents 6cf788ab844c
children 9874afdacb5f
comparison
equal deleted inserted replaced
30121:8bfd8ae3b460 30122:458162398682
1751 listitem_T l_listitems[MAX_FUNC_ARGS]; // listitems for a:000 1751 listitem_T l_listitems[MAX_FUNC_ARGS]; // listitems for a:000
1752 typval_T *rettv; // return value 1752 typval_T *rettv; // return value
1753 linenr_T breakpoint; // next line with breakpoint or zero 1753 linenr_T breakpoint; // next line with breakpoint or zero
1754 int dbg_tick; // debug_tick when breakpoint was set 1754 int dbg_tick; // debug_tick when breakpoint was set
1755 int level; // top nesting level of executed function 1755 int level; // top nesting level of executed function
1756
1756 garray_T fc_defer; // functions to be called on return 1757 garray_T fc_defer; // functions to be called on return
1758 ectx_T *fc_ectx; // execution context for :def function, NULL
1759 // otherwise
1760
1757 #ifdef FEAT_PROFILE 1761 #ifdef FEAT_PROFILE
1758 proftime_T prof_child; // time spent in a child 1762 proftime_T prof_child; // time spent in a child
1759 #endif 1763 #endif
1760 funccall_T *caller; // calling function or NULL; or next funccal in 1764 funccall_T *caller; // calling function or NULL; or next funccal in
1761 // list pointed to by previous_funccal. 1765 // list pointed to by previous_funccal.