summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKaz Kylheku <kaz@kylheku.com>2021-04-05 19:36:46 -0700
committerKaz Kylheku <kaz@kylheku.com>2021-04-05 19:36:46 -0700
commit96e2378a65c9bf2295d9ae147c4e16554b012901 (patch)
tree4ef281b273716330ff18002b84ead868bc014fae
parentbc7a22b3fa9030c3e8d2868f6c9a4c850535b27a (diff)
downloadtxr-96e2378a65c9bf2295d9ae147c4e16554b012901.tar.gz
txr-96e2378a65c9bf2295d9ae147c4e16554b012901.tar.bz2
txr-96e2378a65c9bf2295d9ae147c4e16554b012901.zip
qref: bugfix: handle a.(b).?c correctly.
* share/txr/stdlib/struct.tl (qref): Do not assume that (b) is the name of a slot to be looked up. Use qref to handle it.
-rw-r--r--share/txr/stdlib/struct.tl2
1 files changed, 1 insertions, 1 deletions
diff --git a/share/txr/stdlib/struct.tl b/share/txr/stdlib/struct.tl
index ca3de714..56d27e0a 100644
--- a/share/txr/stdlib/struct.tl
+++ b/share/txr/stdlib/struct.tl
@@ -220,7 +220,7 @@
(((pref sym) . more)
(if (eq pref t)
(let ((s (gensym)))
- ^(let ((,s (slot ,obj ',sym)))
+ ^(let ((,s (qref ,obj ,sym)))
(if ,s (qref ,s ,*more))))
:))
(((dw sym . args))