summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKaz Kylheku <kaz@kylheku.com>2021-02-04 19:37:35 -0800
committerKaz Kylheku <kaz@kylheku.com>2021-02-04 19:37:35 -0800
commitb5d486a7ce3f9cfe9a98afe4e5871512068936a9 (patch)
tree4d986ef740bd0dae520b024e639bebdce101a213
parent4d724ee3ab47eba12b4e9f400cdb064abe2c5c90 (diff)
downloadtxr-b5d486a7ce3f9cfe9a98afe4e5871512068936a9.tar.gz
txr-b5d486a7ce3f9cfe9a98afe4e5871512068936a9.tar.bz2
txr-b5d486a7ce3f9cfe9a98afe4e5871512068936a9.zip
matcher: lambda-match: bug: wrong variable tested.
* share/txr/stdlib/match.tl (expand-lambda-match): The matched-p-temp variable must be tested for each clause, not result-temp. The result of a matching clause could be nil.
-rw-r--r--share/txr/stdlib/match.tl2
1 files changed, 1 insertions, 1 deletions
diff --git a/share/txr/stdlib/match.tl b/share/txr/stdlib/match.tl
index f68a542e..70f19665 100644
--- a/share/txr/stdlib/match.tl
+++ b/share/txr/stdlib/match.tl
@@ -661,7 +661,7 @@
(set exp ^(unless ,rest-temp
,exp)))
(unless (zerop counter)
- (set exp ^(unless ,result-temp ,exp)))
+ (set exp ^(unless ,matched-p-temp ,exp)))
exp))))
^(lambda (,*fix-arg-temps
,*(if opt-arg-temps