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/variable.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/variable.h')
-rw-r--r-- | libguile/variable.h | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/libguile/variable.h b/libguile/variable.h index b63922b2e..21cc482c3 100644 --- a/libguile/variable.h +++ b/libguile/variable.h @@ -42,6 +42,9 @@ * If you write modifications of your own for GUILE, it is your choice * whether to permit this exception to apply to your modifications. * If you do not wish that, delete this exception notice. */ + +/* 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" @@ -53,7 +56,7 @@ extern int scm_tc16_variable; #define SCM_VARVCELL(V) SCM_CDR(V) -#define SCM_VARIABLEP(X) (scm_tc16_variable == SCM_CAR(X)) +#define SCM_VARIABLEP(X) (SCM_NIMP(X) && (scm_tc16_variable == SCM_CAR(X))) #define SCM_UDVARIABLEP(X) (SCM_VARIABLEP(X) && SCM_UNBNDP (SCM_CDR (SCM_VARVCELL (X)))) #define SCM_DEFVARIABLEP(X) (SCM_VARIABLEP(X) && !SCM_UNBNDP (SCM_CDR (SCM_VARVCELL (X)))) |