comparison src/proto/vim9execute.pro @ 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 a542dfb1c1a2
children 01408b56f093
comparison
equal deleted inserted replaced
30121:8bfd8ae3b460 30122:458162398682
11 int may_load_script(int sid, int *loaded); 11 int may_load_script(int sid, int *loaded);
12 typval_T *lookup_debug_var(char_u *name); 12 typval_T *lookup_debug_var(char_u *name);
13 int may_break_in_function(ufunc_T *ufunc); 13 int may_break_in_function(ufunc_T *ufunc);
14 int exe_typval_instr(typval_T *tv, typval_T *rettv); 14 int exe_typval_instr(typval_T *tv, typval_T *rettv);
15 char_u *exe_substitute_instr(void); 15 char_u *exe_substitute_instr(void);
16 int call_def_function(ufunc_T *ufunc, int argc_arg, typval_T *argv, partial_T *partial, typval_T *rettv); 16 int call_def_function(ufunc_T *ufunc, int argc_arg, typval_T *argv, partial_T *partial, funccall_T *funccal, typval_T *rettv);
17 void unwind_def_callstack(ectx_T *ectx);
18 void may_invoke_defer_funcs(ectx_T *ectx);
17 void set_context_in_disassemble_cmd(expand_T *xp, char_u *arg); 19 void set_context_in_disassemble_cmd(expand_T *xp, char_u *arg);
18 char_u *get_disassemble_argument(expand_T *xp, int idx); 20 char_u *get_disassemble_argument(expand_T *xp, int idx);
19 void ex_disassemble(exarg_T *eap); 21 void ex_disassemble(exarg_T *eap);
20 int tv2bool(typval_T *tv); 22 int tv2bool(typval_T *tv);
21 void emsg_using_string_as(typval_T *tv, int as_number); 23 void emsg_using_string_as(typval_T *tv, int as_number);