summaryrefslogtreecommitdiffstats
path: root/eval.c
diff options
context:
space:
mode:
authorKaz Kylheku <kaz@kylheku.com>2012-01-19 22:12:17 -0800
committerKaz Kylheku <kaz@kylheku.com>2012-01-19 22:12:17 -0800
commit3315a83172c4178176d1cf7634dfc69a8fd29edc (patch)
tree1efc2be0ae082739732cfed79e7a7ea226db7fd9 /eval.c
parent611838f27eca5ba48883a1a8219fec180939db7c (diff)
downloadtxr-3315a83172c4178176d1cf7634dfc69a8fd29edc.tar.gz
txr-3315a83172c4178176d1cf7634dfc69a8fd29edc.tar.bz2
txr-3315a83172c4178176d1cf7634dfc69a8fd29edc.zip
* debug.c (last_command): Initialize to empty string rather
than nil, otherwise hitting enter tries to repeat the nil command. (show_bindings): New function. Prints all levels of bindings. (debug): Flip the corresponding print flags after printing the current form or data, so they are not printed for every prompt. On EOF from standard input, substitute the q command. If enter is hit and there is no last command, just re-print the prompt. The v command uses show_bindings to dump the environment. * eval.c (eval): When calling debug_check, pass the env objects, rather than the bindings it contains.
Diffstat (limited to 'eval.c')
-rw-r--r--eval.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/eval.c b/eval.c
index dcca5a6d..0dbe952c 100644
--- a/eval.c
+++ b/eval.c
@@ -327,7 +327,7 @@ static val eval_intrinsic(val form, val env)
val eval(val form, val env, val ctx_form)
{
type_check(env, ENV);
- debug_check(consp(form) ? form : ctx_form, env->e.vbindings, nil, nil, nil);
+ debug_check(consp(form) ? form : ctx_form, env, nil, nil, nil);
if (nullp(form)) {
return nil;