From 3ade8d5cc4514df520edd4f95817b445e35fff41 Mon Sep 17 00:00:00 2001 From: Kaz Kylheku <kaz@kylheku.com> Date: Mon, 27 Feb 2023 17:58:37 -0800 Subject: txr: bugfix, allow lazy lists in multi match. * match.c (do_match_line): Handle LCONS the same way as CONS. When a variable occurs whose value is a list of strings, that may be a lazy list. I ran into a problem using @(data x) to capture a list of strings, and then matching that with @x; the error being "unsupported object in spec", caused by the list's LCONS type not handled in this switch. --- match.c | 1 + 1 file changed, 1 insertion(+) diff --git a/match.c b/match.c index 14a0bb3f..29f634cf 100644 --- a/match.c +++ b/match.c @@ -1752,6 +1752,7 @@ static val do_match_line(match_line_ctx *c) switch (type(elem)) { case CONS: /* directive */ + case LCONS: { val directive = first(elem); -- cgit v1.2.3