From e2118a041353a9d85e1c56051335f8ac0df101fd Mon Sep 17 00:00:00 2001 From: Kaz Kylheku Date: Sat, 21 Jan 2012 17:26:53 -0800 Subject: * debug.c (help): Added missing help for w command. (debug): In backtrace, show the renaming pairs for unbound variables (up_p_a_pairs) if they are present. * debug.h (debug_begin): Renamed to debug_frame. * eval.c (eval): Wrap debug_begin/debug_end around function dispatch, so TXR Lisp functions are included in backtraces. * match.c (h_fun): Follow rename of debug_begin to debug_frame. Pass in evaluated args, not the original ones. (v_fun): Likewise. * unwind.c (uw_push_debug): bindings argument renamed to env. Bugfix: args argument was being assigned to ub_p_a_pairs. * unwind.h (struct uw_debug): Member bindings renamed to env. (uw_push_debug): Declaration updated. --- eval.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'eval.c') diff --git a/eval.c b/eval.c index 06a8d0f2..f2bc2b47 100644 --- a/eval.c +++ b/eval.c @@ -353,9 +353,10 @@ val eval(val form, val env, val ctx_form) val fbinding = lookup_fun(env, oper); if (fbinding) { - debug_return (apply(cdr(fbinding), - eval_args(rest(form), env, form), - form)); + val args = eval_args(rest(form), env, form); + debug_frame(oper, args, nil, env, nil, nil, nil); + debug_return (apply(cdr(fbinding), args, form)); + debug_end; } else { val entry = gethash(op_table, oper); -- cgit v1.2.3