summaryrefslogtreecommitdiffstats
path: root/match.c
diff options
context:
space:
mode:
authorKaz Kylheku <kaz@kylheku.com>2012-01-21 17:26:53 -0800
committerKaz Kylheku <kaz@kylheku.com>2012-01-21 17:26:53 -0800
commite2118a041353a9d85e1c56051335f8ac0df101fd (patch)
treef4501d9a9f82eba38a75e4f9f666e46a659c61d0 /match.c
parent0cbd46033d0ef707a856c78e735dbf41a6fd7faa (diff)
downloadtxr-e2118a041353a9d85e1c56051335f8ac0df101fd.tar.gz
txr-e2118a041353a9d85e1c56051335f8ac0df101fd.tar.bz2
txr-e2118a041353a9d85e1c56051335f8ac0df101fd.zip
* 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.
Diffstat (limited to 'match.c')
-rw-r--r--match.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/match.c b/match.c
index 47591669..66236781 100644
--- a/match.c
+++ b/match.c
@@ -1021,7 +1021,7 @@ static val h_fun(match_line_ctx c, match_line_ctx *cout)
{
uw_block_begin(nil, result);
uw_env_begin;
- debug_begin(sym, args, ub_p_a_pairs, c.bindings, c.dataline, c.data_lineno, c.pos);
+ debug_frame(sym, bindings_cp, ub_p_a_pairs, c.bindings, c.dataline, c.data_lineno, c.pos);
result = match_line(ml_bindings_specline(c, bindings_cp, body));
@@ -3268,7 +3268,7 @@ static val v_fun(match_files_ctx *c)
{
uw_block_begin(nil, result);
uw_env_begin;
- debug_begin(sym, args, ub_p_a_pairs, c->bindings, if2(consp(c->data), car(c->data)),
+ debug_frame(sym, bindings_cp, ub_p_a_pairs, c->bindings, if2(consp(c->data), car(c->data)),
c->data_lineno, nil);
result = match_files(mf_spec_bindings(*c, body, bindings_cp));
debug_end;