summaryrefslogtreecommitdiff
path: root/libguile/eval.c
diff options
context:
space:
mode:
authorAndy Wingo <wingo@pobox.com>2011-05-13 15:45:43 +0200
committerAndy Wingo <wingo@pobox.com>2011-05-13 15:45:43 +0200
commit86fb1eb631d455aec634aa475a14d2c88052752c (patch)
tree98936072396a05aa1e4a6d177452f6d5e65a62f5 /libguile/eval.c
parentfc7bd367ab4b5027a7f80686b1e229c62e43c90b (diff)
parent2002f1f84797c2c46d0634eabd5ac5fd61e13d73 (diff)
downloadguile-86fb1eb631d455aec634aa475a14d2c88052752c.tar.gz
merge strictness branch from 2.0
Diffstat (limited to 'libguile/eval.c')
-rw-r--r--libguile/eval.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/libguile/eval.c b/libguile/eval.c
index 009f3790b..e008b3a08 100644
--- a/libguile/eval.c
+++ b/libguile/eval.c
@@ -102,7 +102,8 @@
*/
static scm_t_bits scm_tc16_boot_closure;
-#define RETURN_BOOT_CLOSURE(code, env) SCM_RETURN_NEWSMOB2 (scm_tc16_boot_closure, (code), (env))
+#define RETURN_BOOT_CLOSURE(code, env) \
+ SCM_RETURN_NEWSMOB2 (scm_tc16_boot_closure, SCM_UNPACK (code), SCM_UNPACK (env))
#define BOOT_CLOSURE_P(obj) SCM_TYP16_PREDICATE (scm_tc16_boot_closure, (obj))
#define BOOT_CLOSURE_CODE(x) SCM_SMOB_OBJECT (x)
#define BOOT_CLOSURE_ENV(x) SCM_SMOB_OBJECT_2 (x)
@@ -210,8 +211,8 @@ truncate_values (SCM x)
case, because further lexical contours should capture the current module.
*/
#define CAPTURE_ENV(env) \
- ((env == SCM_EOL) ? scm_current_module () : \
- ((env == SCM_BOOL_F) ? scm_the_root_module () : env))
+ (scm_is_null (env) ? scm_current_module () : \
+ (scm_is_false (env) ? scm_the_root_module () : env))
static SCM
eval (SCM x, SCM env)