From 9496b3f825b80611b7bbfbc8cd9898da0412f581 Mon Sep 17 00:00:00 2001 From: Kaz Kylheku Date: Mon, 5 Jan 2015 18:15:42 -0800 Subject: * match.c (h_trailer): Bugfix: not returning new variable bindings captured in trailer section. Ouch! --- ChangeLog | 5 +++++ match.c | 4 ++-- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index 4e6fee1e..0747d675 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2015-01-05 Kaz Kylheku + + * match.c (h_trailer): Bugfix: not returning new variable + bindings captured in trailer section. Ouch! + 2015-01-01 Kaz Kylheku Version 101 diff --git a/match.c b/match.c index 7746e137..96b93ea9 100644 --- a/match.c +++ b/match.c @@ -1045,7 +1045,7 @@ static val h_parallel(match_line_ctx *c) static val h_trailer(match_line_ctx *c) { val result = match_line(ml_specline(*c, rest(c->specline))); - val new_pos = cdr(result); + cons_bind (new_bindings, new_pos, result); val elem = first(c->specline); if (!new_pos) { @@ -1054,7 +1054,7 @@ static val h_trailer(match_line_ctx *c) } LOG_MATCH("trailer", new_pos); - return cons(c->bindings, plus(c->pos, c->base)); + return cons(new_bindings, plus(c->pos, c->base)); } static val h_fun(match_line_ctx *c) -- cgit v1.2.3