0
0
mirror of https://github.com/vim/vim.git synced 2025-09-24 03:44:06 -04:00

patch 8.2.3078: Vim9: profile test fails

Problem:    Vim9: profile test fails.
Solution:   Make throw in :catch jump to :finally.
This commit is contained in:
Bram Moolenaar
2021-06-30 20:39:15 +02:00
parent d3d8feeb89
commit 834193afd7
4 changed files with 39 additions and 4 deletions

View File

@@ -8397,10 +8397,17 @@ compile_finally(char_u *arg, cctx_T *cctx)
this_instr = instr->ga_len;
#ifdef FEAT_PROFILE
if (cctx->ctx_compile_type == CT_PROFILE
&& ((isn_T *)instr->ga_data)[instr->ga_len - 1]
&& ((isn_T *)instr->ga_data)[this_instr - 1]
.isn_type == ISN_PROF_START)
{
// jump to the profile start of the "finally"
--this_instr;
// jump to the profile end above it
if (this_instr > 0 && ((isn_T *)instr->ga_data)[this_instr - 1]
.isn_type == ISN_PROF_END)
--this_instr;
}
#endif
// Fill in the "end" label in jumps at the end of the blocks.