aboutsummaryrefslogtreecommitdiffstats
path: root/csc/match.csc
diff options
context:
space:
mode:
Diffstat (limited to 'csc/match.csc')
-rw-r--r--csc/match.csc3
1 files changed, 2 insertions, 1 deletions
diff --git a/csc/match.csc b/csc/match.csc
index 116204f..96ec4d3 100644
--- a/csc/match.csc
+++ b/csc/match.csc
@@ -51,7 +51,8 @@
(match-pattern (car y) pattern result result* ...)
(raise *no-match*))))
((match-pattern x (% record-matcher . patterns) result result* ...)
- (match-pattern (map cdr (cdr (record-matcher x))) patterns result result* ...))
+ (let ((x* (record-matcher x)))
+ (match-pattern (map cdr (cdr (record-matcher x))) patterns result result* ...)))
((match-pattern x (pattern . rest) result result* ...)
(let ((y x))
(if (pair? y)