summaryrefslogtreecommitdiffstats
path: root/eval.c
diff options
context:
space:
mode:
Diffstat (limited to 'eval.c')
-rw-r--r--eval.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/eval.c b/eval.c
index bd0b40ea..210c7a97 100644
--- a/eval.c
+++ b/eval.c
@@ -953,8 +953,11 @@ val interp_fun(val env, val fun, struct args *args)
val eval_intrinsic(val form, val env)
{
val lfe_save = last_form_evaled;
- val form_ex = (last_form_evaled = nil, expand(form, nil));
+ val lfx_save = last_form_expanded;
+ val form_ex = (last_form_expanded = last_form_evaled = nil,
+ expand(form, nil));
val ret = eval(form_ex, default_bool_arg(env), form);
+ last_form_expanded = lfx_save;
last_form_evaled = lfe_save;
return ret;
}