diff options
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | eval.c | 8 |
2 files changed, 10 insertions, 3 deletions
@@ -1,5 +1,10 @@ 2015-05-12 Kaz Kylheku <kaz@kylheku.com> + * eval.c (env_vb_to_fb): Allow null env argument. This + case occurs when (flet () ...) is expanded. + +2015-05-12 Kaz Kylheku <kaz@kylheku.com> + DWIM places must use Lisp-1 semantics. This really only affects code which does something like @@ -139,9 +139,11 @@ val env_vbind(val env, val sym, val obj) static void env_vb_to_fb(val env) { - type_check(env, ENV); - env->e.fbindings = env->e.vbindings; - env->e.vbindings = nil; + if (env) { + type_check(env, ENV); + env->e.fbindings = env->e.vbindings; + env->e.vbindings = nil; + } } noreturn static val eval_error(val form, val fmt, ...) |