fix 3‿3⍒"a" & "aa"⍒3‿3

This commit is contained in:
dzaima 2024-04-04 03:47:36 +03:00
parent a75522c738
commit 3870189f85
2 changed files with 11 additions and 6 deletions

View File

@ -416,7 +416,10 @@ B GRADE_CAT(c2)(B t, B w, B x) {
B r; Arr* ra; B r; Arr* ra;
if (wia==0 | xia==0) goto zeroes_done; if (wia==0 | xia==0) {
ra = allZeroes(xia);
goto copysh_done;
}
if (wia==1) { if (wia==1) {
B c = IGet(w, 0); B c = IGet(w, 0);
if (LIKELY(we<el_B & xe<el_B)) { if (LIKELY(we<el_B & xe<el_B)) {
@ -502,11 +505,14 @@ B GRADE_CAT(c2)(B t, B w, B x) {
w=toI32Any(w); x=toI32Any(x); w=toI32Any(w); x=toI32Any(x);
#endif #endif
} else { } else {
ra = reshape_one(xia, m_f64(wia)); ra = GRADE_UD(reshape_one(xia, m_f64(wia)), allZeroes(xia));
goto copysh_done; goto copysh_done;
} }
} else { // w is character } else { // w is character
if (elNum(xe)) goto zeroes_done; if (elNum(xe)) {
ra = GRADE_UD(allZeroes(xia), reshape_one(xia, m_f64(wia)));
goto copysh_done;
}
we = el_c32; we = el_c32;
w=toC32Any(w); x=toC32Any(x); w=toC32Any(w); x=toC32Any(x);
@ -552,9 +558,6 @@ B GRADE_CAT(c2)(B t, B w, B x) {
decG(w);decG(x); decG(w);decG(x);
return r; return r;
zeroes_done:;
ra = allZeroes(xia);
copysh_done:; copysh_done:;
r = taga(arr_shCopy(ra, x)); r = taga(arr_shCopy(ra, x));
goto done; goto done;

View File

@ -330,6 +330,8 @@ w←1‿1⥊1 ⋄ x←2⥊1 ⋄ w‿x <¨↩ ⋄ {! (∾⟨•Repr𝕩,": Expe
# 𝕨⍋𝕩 # 𝕨⍋𝕩
!"⍋: 𝕨 must be sorted" % a-¨ ¨ 10 a¨10 !"⍋: 𝕨 must be sorted" % a-¨ ¨ 10 a¨10
(¨)({! (𝕨𝕩) (𝕩) (𝕨)×0𝕨 •Cmp 𝕩}) 3, <3, 103, 'a', <'a', 10'a'
(¨)({! (𝕨𝕩) (𝕩) (𝕨)×0𝕨 •Cmp 𝕩}) 3, <3, 103, 'a', <'a', 10'a'
# 𝕨|𝕩 # 𝕨|𝕩
{x2𝕨|𝕩 ! x •internal.EEqual 𝕨𝕨|𝕩𝕩 ! x •internal.EEqual 𝕨|𝕩𝕩}˜ - π, , 0÷0, 0.5, 0.1(10)(¯4+9)+278153132 {x2𝕨|𝕩 ! x •internal.EEqual 𝕨𝕨|𝕩𝕩 ! x •internal.EEqual 𝕨|𝕩𝕩}˜ - π, , 0÷0, 0.5, 0.1(10)(¯4+9)+278153132