From 198e11ebbeb4d7601bd3d8161d85c848c47ebfed Mon Sep 17 00:00:00 2001 From: Marshall Lochbaum Date: Fri, 16 Jul 2021 14:26:54 -0400 Subject: Don't allow multiple bodies in immediate blocks --- src/c.bqn | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'src/c.bqn') diff --git a/src/c.bqn b/src/c.bqn index 5d10238a..3bb84371 100644 --- a/src/c.bqn +++ b/src/c.bqn @@ -157,7 +157,8 @@ Parse ← {r‿vn‿i‿e‿def←𝕨⋄nv←≠vn PN←1(∾/∾˜)(∨/⊣)⋄H←cb¬∘PN⊢⋄HE←H∘= # Which bodies have a property sn←(0‿3‿5‿6+⊑bI)⍋𝕩⋄sp←/𝕩 M bI # Special name index fx←H 1=sn⋄fr←(fx∨0⊸<)⊸+ft←(2⊸HE⌈2×3⊸HE)sn # Body immediacy ¬fx and type ft - "Block cases must be of the same kind"_err_(/CB) 1↓cf<»⊸≠fr + "Only blocks with explicit arguments can have multiple bodies"_err_(/CB) 1↓cm>fx + "Block bodies must be of the same kind"_err_(/CB) 1↓cf<»⊸≠ft "Special name outside of any block"_err_(/{(0=fi)∧𝕩 M bI}∘𝕩) 0<⊑fr fsc←(ft⊏0‿2‿3)+3×fx # Special name count -- cgit v1.2.3