From 56a1fc3637bce2544c598a8716ca12f2a2f2e0e6 Mon Sep 17 00:00:00 2001 From: dzaima Date: Mon, 10 Jul 2023 23:48:07 +0300 Subject: [PATCH] use float getting functions for getting floats --- src/builtins/scan.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/builtins/scan.c b/src/builtins/scan.c index 9743bb57..dc74796f 100644 --- a/src/builtins/scan.c +++ b/src/builtins/scan.c @@ -124,13 +124,13 @@ B shape_c2(B, B, B); T* xp=T##any_ptr(x); T* rp; r=m_##T##arrv(&rp, ia); MINMAX_SCAN(T,N,C,wv); \ break; } #define MINMAX2(NAME,C,INIT,BIT,BI,ORD) \ - i32 wv=0; if (q_i32(w)) { wv=w.f; } else { x=taga(cpyF64Arr(x)); xe=el_f64; } \ + i32 wv=0; if (q_i32(w)) { wv=o2fG(w); } else { x=taga(cpyF64Arr(x)); xe=el_f64; } \ B r; switch (xe) { default:UD; \ case el_bit: if (wv C BI) r=C2(shape,m_f64(ia),w); else return scan_##BIT(x, ia); break; \ MM2_ICASE(i8 ,NAME,C,I8_##INIT ) \ MM2_ICASE(i16,NAME,C,I16_##INIT) \ MM_CASE(i32,NAME,C,wv) \ - MM_CASE(f64,NAME,C,w.f) \ + MM_CASE(f64,NAME,C,o2fG(w)) \ } \ decG(x); return FL_SET(r, fl_##ORD); SHOULD_INLINE B scan2_min_num(B w, B x, u8 xe, usz ia) { MINMAX2(min,<,MAX,and,1,dsc) } @@ -220,7 +220,7 @@ B scan_c1(Md1D* d, B x) { B f = d->f; if (rtid==n_ceil ) return scan_max_num(x, xe, ia); // ⌈ if (rtid==n_ne) { // ≠ if (!elInt(xe)) goto base; - f64 x0 = IGetU(x,0).f; + f64 x0 = o2fG(IGetU(x,0)); if (!q_fbit(x0)) goto base; u64* rp; B r = m_bitarrv(&rp, ia); bool c = x0;