diff --git a/src/builtins/md2.c b/src/builtins/md2.c index f5d545c3..48586970 100644 --- a/src/builtins/md2.c +++ b/src/builtins/md2.c @@ -59,6 +59,7 @@ void repeat_bounds(i64* bound, B g) { // doesn't consume #define UPD_BOUNDS(B,I) ({ i64 i_ = (I); if (i_bound[1]) bound[1] = i_; }) if (isArr(g)) { usz ia = IA(g); + if (ia == 0) return; u8 ge = TI(g,elType); if (elNum(ge)) { i64 bres[2]; diff --git a/test/cases/prims.bqn b/test/cases/prims.bqn index d4a802db..fd28f8e8 100644 --- a/test/cases/prims.bqn +++ b/test/cases/prims.bqn @@ -333,6 +333,7 @@ w←1‿1⥊1 ⋄ x←2⥊1 ⋄ w‿x <¨↩ ⋄ {! (∾⟨•Repr𝕩,": Expe %USE eqvar ⋄ a←¯5+↕10 ⋄ {1⊸+⍟𝕩 ⋈10}_eqvar a %% ⋈¨ 5+↕10 %USE eqvar ⋄ a←¯5+↕10 ⋄ {1+⍟𝕩 ⋈10}_eqvar a %% ⋈¨ 5+↕10 %USE eqvar ⋄ a←¯5+↕10 ⋄ {1+⍟(𝕩{!𝕩≡⋈10 ⋄ 𝕗}) ⋈10}_eqvar a %% ⋈¨ 5+↕10 +!∘0⍟⟨↕0, ⟨⟩, ""⟩ 0 %% ⟨⟨⟩,⟨⟩,⟨⟩⟩ !"Calling a modifier" % 1⊸+⍟{∘} 0 !"⍟: 𝔾 contained non-number" % 1⊸+⍟⟨1,∘,3⟩ 0 !"Expected integer, got 1.5" % 1⊸+⍟1.5 0