aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMarshall Lochbaum <mwlochbaum@gmail.com>2021-11-24 21:53:33 -0500
committerMarshall Lochbaum <mwlochbaum@gmail.com>2021-11-24 21:53:33 -0500
commit4f35e5cd1541b2a17a323ac6b04201be7e7fbdc4 (patch)
treebcff7a6bcb005ba01250c3f777d98e2a88bf2ebf /src
parent6bc5cf358c6ab1ac2b63da161d05b93d0e4b262a (diff)
Fix 𝕨𝔽_𝕣˜⁼𝕩: left argument check
Diffstat (limited to 'src')
-rw-r--r--src/c.bqn6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/c.bqn b/src/c.bqn
index 2c223867..fb35a0b3 100644
--- a/src/c.bqn
+++ b/src/c.bqn
@@ -191,11 +191,11 @@ Parse ← {r‿vn‿i‿e‿def←𝕨⋄nv←≠vn
"Invalid Undo header syntax"_err_(HI) hm<×ut
"Header left argument without right"_err_(HI) ha>hc+`⊸⊏hx∾0
"Header operation must be a plain name"_err_(HI) hma>hk≠2
- "Header with ˜⁼ must have left argument"_err_(HI) (hl<2=ut)>«ha
ut/˜↩hm⋄hx∨↩1=hr
"Header with ⁼ must take arguments"_err_(hm/HI) hx<×ut
- cwh←(2×2=ut)⌈hc/»hl⌈ha×1+he←0≠hk # ↓ for just headers
- cw←cwh⌾(ch⊸/)1+-⟜«(»cq)<1(⊢<«)cf # Body 𝕨: 0 no, 1 allowed, 2 required
+ cwh←hc/»hl⌈ha×1+he←0≠hk # Body 𝕨 for just headers
+ "Header with ˜⁼ must have left argument"_err_(HI) (0=cwh)∧ut2←2=ut
+ cw←(cwh⌈2×ut2)⌾(ch⊸/)1+-⟜«(»cq)<1(⊢<«)cf # Body 𝕨: 0 no, 1 allowed, 2 required
hl/˜↩hm⋄hu←(¬he)⌾(hi⊸⊏)hf # hu: mask of header special names
hj←gi⊏˜he/hi⋄hd←2=he/hk # hj: header assignments; hd: which ones destructure