summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKaz Kylheku <kaz@kylheku.com>2025-04-04 20:26:07 -0700
committerKaz Kylheku <kaz@kylheku.com>2025-04-04 20:26:07 -0700
commit7876eaffd6f86cc0dd7a3909051f637d39361798 (patch)
treef9d824786910debabf234c093c00fbc0b6cd4bb4
parent57cbd9fe4fc8ff17a806151ae996cd39268e7587 (diff)
downloadtxr-7876eaffd6f86cc0dd7a3909051f637d39361798.tar.gz
txr-7876eaffd6f86cc0dd7a3909051f637d39361798.tar.bz2
txr-7876eaffd6f86cc0dd7a3909051f637d39361798.zip
infix: assignment must be right associative
* stdlib/infix.tl (toplevel): The := operator must be assoc :right so a := b := c becomes (set a (set b c)) and not (set (set a b) c).
-rw-r--r--stdlib/infix.tl2
1 files changed, 1 insertions, 1 deletions
diff --git a/stdlib/infix.tl b/stdlib/infix.tl
index 73b4caf4..e45560aa 100644
--- a/stdlib/infix.tl
+++ b/stdlib/infix.tl
@@ -48,7 +48,7 @@
trunc floor ceil round lognot)))
(new (ifx-oper 0 fun) arity :prefix assoc :right funp t))
-(new (ifx-oper 10 ':=) lispsym 'set)
+(new (ifx-oper 10 ':=) assoc :right lispsym 'set)
(new (ifx-oper 11 'or))
(new (ifx-oper 12 'and))
(new (ifx-oper 13 'not) arity :prefix assoc :right)