diff options
author | Greg J. Badros <gjb@cs.washington.edu> | 1999-12-16 03:46:42 +0000 |
---|---|---|
committer | Greg J. Badros <gjb@cs.washington.edu> | 1999-12-16 03:46:42 +0000 |
commit | d3a6bc94840464e1af8109de5dddd5859560c679 (patch) | |
tree | 87475ee6d125df4493b89e5e6a9a13933c8ab356 /libguile/debug.h | |
parent | f353a9e2323b3957cd8475bcf10f7b489a8ce000 (diff) | |
download | guile-d3a6bc94840464e1af8109de5dddd5859560c679.tar.gz |
* *.h: Use SCM_NIMP(X) && in all the FOOP macros.
* *.[ch]: Use do { ... } while (0) idiom in macros that expanded
to a bare block.
Diffstat (limited to 'libguile/debug.h')
-rw-r--r-- | libguile/debug.h | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/libguile/debug.h b/libguile/debug.h index 87161488a..a3e69bfd1 100644 --- a/libguile/debug.h +++ b/libguile/debug.h @@ -45,6 +45,9 @@ * * The author can be reached at djurfeldt@nada.kth.se * Mikael Djurfeldt, SANS/NADA KTH, 10044 STOCKHOLM, SWEDEN */ + +/* Software engineering face-lift by Greg J. Badros, 11-Dec-1999, + gjb@cs.washington.edu, http://www.cs.washington.edu/homes/gjb */ #include "libguile/__scm.h" @@ -93,13 +96,13 @@ extern int scm_check_entry_p, scm_check_apply_p, scm_check_exit_p; #define CHECK_EXIT 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;\ 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} @@ -163,7 +166,7 @@ extern scm_debug_frame *scm_last_debug_frame; extern long scm_tc16_debugobj; -#define SCM_DEBUGOBJP(x) (scm_tc16_debugobj == SCM_TYP16 (x)) +#define SCM_DEBUGOBJP(x) (SCM_NIMP(x) && (scm_tc16_debugobj == SCM_TYP16 (x))) #define SCM_DEBUGOBJ_FRAME(x) SCM_CDR (x) #define SCM_SET_DEBUGOBJ_FRAME(x, f) SCM_SETCDR (x, f) @@ -172,7 +175,7 @@ extern long scm_tc16_debugobj; extern long scm_tc16_memoized; -#define SCM_MEMOIZEDP(x) (scm_tc16_memoized == SCM_TYP16 (x)) +#define SCM_MEMOIZEDP(x) (SCM_NIMP(x) && (scm_tc16_memoized == SCM_TYP16 (x))) #define SCM_MEMOIZED_EXP(x) SCM_CAR (SCM_CDR (x)) #define SCM_MEMOIZED_ENV(x) SCM_CDR (SCM_CDR (x)) |