diff options
-rw-r--r-- | src/version.c | 2 | ||||
-rw-r--r-- | src/vim.h | 1 | ||||
-rw-r--r-- | src/vim9.h | 13 |
3 files changed, 13 insertions, 3 deletions
diff --git a/src/version.c b/src/version.c index 2800cf4a3..61a5f0d5c 100644 --- a/src/version.c +++ b/src/version.c @@ -751,6 +751,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 2988, +/**/ 2987, /**/ 2986, @@ -1801,6 +1801,7 @@ typedef enum { CT_DEBUG // use df_instr_debug, overrules CT_PROFILE } compiletype_T; +// Keep in sync with INSTRUCTIONS(). #ifdef FEAT_PROFILE # define COMPILE_TYPE(ufunc) (debug_break_level > 0 ? CT_DEBUG : do_profiling == PROF_YES && (ufunc)->uf_profiling ? CT_PROFILE : CT_NONE) #else diff --git a/src/vim9.h b/src/vim9.h index f434602d2..dd390716b 100644 --- a/src/vim9.h +++ b/src/vim9.h @@ -493,10 +493,17 @@ extern garray_T def_functions; // Used for "lnum" when a range is to be taken from the stack and "!" is used. #define LNUM_VARIABLE_RANGE_ABOVE -888 +// Keep in sync with COMPILE_TYPE() #ifdef FEAT_PROFILE # define INSTRUCTIONS(dfunc) \ - ((do_profiling == PROF_YES && (dfunc->df_ufunc)->uf_profiling) \ - ? (dfunc)->df_instr_prof : (dfunc)->df_instr) + (debug_break_level > 0 \ + ? (dfunc)->df_instr_debug \ + : ((do_profiling == PROF_YES && (dfunc->df_ufunc)->uf_profiling) \ + ? (dfunc)->df_instr_prof \ + : (dfunc)->df_instr)) #else -# define INSTRUCTIONS(dfunc) ((dfunc)->df_instr) +# define INSTRUCTIONS(dfunc) \ + (debug_break_level > 0 \ + ? (dfunc)->df_instr_debug \ + : (dfunc)->df_instr) #endif |