From 6629eb1ca73e49fee302534f50c5b5dd4cee02ce Mon Sep 17 00:00:00 2001 From: Mikael Djurfeldt Date: Tue, 10 Nov 1998 06:10:33 +0000 Subject: [PATCH] * stacks.c (read_frame): Bugfix: Removed lingering `else' statement. (read_frames): Use SCM_MACROEXPP. --- libguile/stacks.c | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/libguile/stacks.c b/libguile/stacks.c index 5231cb7c0..31d0da4bb 100644 --- a/libguile/stacks.c +++ b/libguile/stacks.c @@ -209,10 +209,7 @@ read_frame (dframe, offset, iframe) flags |= SCM_FRAMEF_EVAL_ARGS; } } - else - { - iframe->source = scm_make_memoized (info[0].e.exp, info[0].e.env); - } + iframe->source = scm_make_memoized (info[0].e.exp, info[0].e.env); } else { @@ -255,9 +252,10 @@ read_frames (dframe, offset, n, iframes) read_frame (dframe, offset, iframe); if (SCM_EVALFRAMEP (*dframe)) { - /* If current frame is a macro frame, we should skip the - previously recorded macro application frame. */ - if (SCM_MACROFRAMEP (*dframe) && iframe > iframes) + /* If current frame is a macro during expansion, we should + skip the previously recorded macro transformer + application frame. */ + if (SCM_MACROEXPP (*dframe) && iframe > iframes) { *(iframe - 1) = *iframe; --iframe;