From 59f3e2b5591e77f6115e52185bce75775c801034 Mon Sep 17 00:00:00 2001 From: Marshall Lochbaum Date: Wed, 18 Aug 2021 15:36:06 -0400 Subject: Keep stranded values from slipping by assignment target syntax check --- src/c.bqn | 2 +- test/cases/syntax.bqn | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/src/c.bqn b/src/c.bqn index 27d14057..a126bcd5 100644 --- a/src/c.bqn +++ b/src/c.bqn @@ -244,7 +244,7 @@ Parse ← {r‿vn‿i‿e‿def←𝕨⋄nv←≠vn (∨´(1↓fv)⊸<)◶"Invalid use of 𝕨 in monadic case"‿"Unreachable body"_err_(/CB) 1↓fw∧cw=0 cw⌈↩2×fw nn←fo+`⊸⊏2=cw⋄no(⊣-=)↩nn⋄ne(⊣-=)↩nn # 2=cw indicates 𝕨 is never Nothing - "Assignment target must be a name or list of targets"_err_(G) (a∨aid∨ps∨𝕩(=⟜(3+⊑)«𝕩=⊑bL)∨𝕩(=⟜(3+⊑)aa af>↩alm←ai⊏aa⋄al←alm/ai # aliases al diff --git a/test/cases/syntax.bqn b/test/cases/syntax.bqn index ec7c549e..d94d6f4e 100644 --- a/test/cases/syntax.bqn +++ b/test/cases/syntax.bqn @@ -51,6 +51,7 @@ ! % a‿b←3 ! % ⟨a⟩←3 ! % a‿b←↕3 +! % ⟨a,2‿b⟩←⟨1,2‿3⟩ # Modify 3 % n←2⋄n↩3⋄n -- cgit v1.2.3