From 9b0299d1a50104027fc5eab71798c38cfe408f7e Mon Sep 17 00:00:00 2001 From: dzaima Date: Mon, 10 Jul 2023 23:25:28 +0300 Subject: [PATCH] =?UTF-8?q?fix=20(<1)=E2=89=A0`5=E2=A5=8A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/builtins/scan.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/builtins/scan.c b/src/builtins/scan.c index a6b18c60..9743bb57 100644 --- a/src/builtins/scan.c +++ b/src/builtins/scan.c @@ -273,9 +273,10 @@ B scan_c2(Md1D* d, B w, B x) { B f = d->f; if (rtid==n_rtack) { dec(w); return x; } if (rtid==n_ltack) return C2(shape, C1(fne, x), w); if (!(xr==1 && elNum(xe) && xe<=el_f64)) goto base; + if (!isF64(w)) goto base; - if (rtid==n_floor && isF64(w)) return scan2_min_num(w, x, xe, ia); // ⌊ - if (rtid==n_ceil && isF64(w)) return scan2_max_num(w, x, xe, ia); // ⌈ + if (rtid==n_floor) return scan2_min_num(w, x, xe, ia); // ⌊ + if (rtid==n_ceil ) return scan2_max_num(w, x, xe, ia); // ⌈ if (rtid==n_add) { // + if (xe==el_bit) { @@ -286,7 +287,7 @@ B scan_c2(Md1D* d, B w, B x) { B f = d->f; return wv==0? t : C2(add, w, t); } - if (isF64(w) && elInt(xe)) return scan_plus(o2fG(w), x, xe, ia); + if (elInt(xe)) return scan_plus(o2fG(w), x, xe, ia); } if (rtid==n_ne) { // ≠