diff options
Diffstat (limited to 'libguile/debug.h')
-rw-r--r-- | libguile/debug.h | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/libguile/debug.h b/libguile/debug.h index 16d09510a..0954e3329 100644 --- a/libguile/debug.h +++ b/libguile/debug.h @@ -98,14 +98,16 @@ extern int scm_check_entry_p, scm_check_apply_p, scm_check_exit_p; #define SCM_RESET_DEBUG_MODE \ do {\ - CHECK_ENTRY = SCM_ENTER_FRAME_P || SCM_BREAKPOINTS_P;\ - CHECK_APPLY = SCM_APPLY_FRAME_P || SCM_TRACE_P;\ - CHECK_EXIT = SCM_EXIT_FRAME_P || SCM_TRACE_P;\ + CHECK_ENTRY = (SCM_ENTER_FRAME_P || SCM_BREAKPOINTS_P)\ + && SCM_NFALSEP (SCM_ENTER_FRAME_HDLR);\ + CHECK_APPLY = (SCM_APPLY_FRAME_P || SCM_TRACE_P)\ + && SCM_NFALSEP (SCM_APPLY_FRAME_HDLR);\ + CHECK_EXIT = (SCM_EXIT_FRAME_P || SCM_TRACE_P)\ + && SCM_NFALSEP (SCM_EXIT_FRAME_HDLR);\ scm_debug_mode = SCM_DEVAL_P || CHECK_ENTRY || CHECK_APPLY || CHECK_EXIT;\ scm_ceval_ptr = scm_debug_mode ? scm_deval : scm_ceval;\ } while (0) - /* {Evaluator} */ |