From a94903cb12f242ab0c54228ddca2674c0d385e79 Mon Sep 17 00:00:00 2001 From: dzaima Date: Mon, 25 Mar 2024 15:55:58 +0200 Subject: [PATCH] =?UTF-8?q?fix=20=F0=9D=95=A8=E2=8A=8Funit?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/builtins/select.c | 2 +- test/cases/prims.bqn | 8 +++++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/src/builtins/select.c b/src/builtins/select.c index a705faf4..233d9858 100644 --- a/src/builtins/select.c +++ b/src/builtins/select.c @@ -115,9 +115,9 @@ static NOINLINE NORETURN void select_properError(B w, B x) { B select_c2(B t, B w, B x) { if (isAtm(x)) thrM("⊏: 𝕩 cannot be an atom"); ur xr = RNK(x); + if (xr==0) thrM("⊏: 𝕩 cannot be a unit"); if (isAtm(w)) { watom:; - if (xr==0) thrM("⊏: 𝕩 cannot be a unit"); usz xn = *SH(x); usz wi = WRAP(o2i64(w), xn, thrF("⊏: Indexing out-of-bounds (%RβˆŠπ•¨, %s≑≠𝕩)", w, xn)); if (xr==1) { diff --git a/test/cases/prims.bqn b/test/cases/prims.bqn index 161fc99a..c6514fe5 100644 --- a/test/cases/prims.bqn +++ b/test/cases/prims.bqn @@ -116,6 +116,12 @@ %USE tvar β‹„ !βˆ˜β‰‘Β¨βŸœβŠ ∾ {β₯Šπ•¨ ⊏⎊(β€’CurrentError∘⊒) _tvar 𝕩}´¨ ⟨⟨0β€Ώ1, β‹ˆ0⟩ β‹„ ⟨0β€Ώ1, "?"⟩ β‹„ ⟨0β€Ώ1, ≍0β€Ώ1⟩⟩ a←↕2 β‹„ ! "e" ≑ (↕10){b←aβ€Ώaβ€Ώaβ€Ώaβ€Ώaβ€Ώaβ€Ώaβ€Ώaβ€Ώaβ€Ώa β‹„ π•¨βŠβŽŠ"e"𝕩}⟨1β€Ώ2,3β€Ώ4⟩ β‹„ ! 0β€Ώ1 ≑ a %USE eqvar β‹„ {1β€ΏΒ―1 {rβ†π•¨βŠπ•© β‹„ ! 𝕩 β‰₯β—‹β€’internal.ElType r β‹„ r}_eqvar 𝕩}Β¨ βŸ¨β†•2, ↕4, "hello", ⟨"ab", "cd", "ef"⟩, β†•β‹ˆ4⟩ +!"⊏: 𝕩 cannot be a unit" % 0⊏<"a" +!"⊏: 𝕩 cannot be a unit" % 0⊏<5 +!"⊏: 𝕩 cannot be an atom" % 0⊏5 +!"⊏: 𝕩 cannot be a unit" % ⟨⟩⊏<"a" +!"⊏: 𝕩 cannot be a unit" % ⟨⟩⊏<5 +!"⊏: 𝕩 cannot be an atom" % ⟨⟩⊏5 # π•¨βŠ‘π•© !"βŠ‘: 𝕨 contained a non-integer" % ⟨0.1βŸ©βŠ‘β†•3 @@ -361,4 +367,4 @@ w←1β€Ώ1β₯Š1 β‹„ x←2β₯Š1 β‹„ wβ€Ώx <¨↩ β‹„ {! (βˆΎβŸ¨β€’Repr𝕩,": Expe # ˜ 5˜˝ "ab" %% 5 5˜⌜˜ "a" %% [[5]] -5ΛœΛΛ˜β‰"ab" %% ⟨5⟩ \ No newline at end of file +5ΛœΛΛ˜β‰"ab" %% ⟨5⟩