@@ -444,7 +444,6 @@ jtccvt(J jt, I tflagged, array w, array *y) -> bool {
444444 // as n or s[0] since only n atoms will be used. For higher ranks, we need the shape from s. So it's just as well
445445 // that we take the shape from s now
446446 *y = d;
447- auto *wv = pointer_to_values<void >(w); // return the address of the new block
448447 if ((t & CMPX) != 0 ) {
449448 jtfillv (jt, t, n, static_cast <C *>(yv)); // why?? just fill in imaginary parts as we need to
450449 }
@@ -468,20 +467,20 @@ jtccvt(J jt, I tflagged, array w, array *y) -> bool {
468467 }
469468 }
470469 switch (CVCASE (CTTZ (t), CTTZ (wt))) {
471- case CVCASE (INTX, B01X): std::copy_n (static_cast <B *>(wv ), n, static_cast <I *>(yv)); return true ;
470+ case CVCASE (INTX, B01X): std::copy_n (pointer_to_values<B>(w ), n, static_cast <I *>(yv)); return true ;
472471 case CVCASE (XNUMX, B01X): return convert<bool , X>(jt, w, yv);
473472 case CVCASE (RATX, B01X):
474473 GATV (d, XNUM, n, r, s);
475474 return convert<bool , X>(jt, w, pointer_to_values (d)) && convert<X, Q>(jt, d, yv);
476- case CVCASE (FLX, B01X): std::copy_n (static_cast <B *>(wv ), n, static_cast <D *>(yv)); return true ;
477- case CVCASE (CMPXX, B01X): set_real_part (static_cast <Z *>(yv), n, static_cast <B *>(wv )); return true ;
475+ case CVCASE (FLX, B01X): std::copy_n (pointer_to_values<B>(w ), n, static_cast <D *>(yv)); return true ;
476+ case CVCASE (CMPXX, B01X): set_real_part (static_cast <Z *>(yv), n, pointer_to_values<B>(w )); return true ;
478477 case CVCASE (B01X, INTX): return convert<I, bool >(jt, w, yv);
479478 case CVCASE (XNUMX, INTX): return convert<I, X>(jt, w, yv);
480479 case CVCASE (RATX, INTX):
481480 GATV (d, XNUM, n, r, s);
482481 return convert<I, X>(jt, w, pointer_to_values (d)) && convert<X, Q>(jt, d, yv);
483- case CVCASE (FLX, INTX): std::copy_n (static_cast <I *>(wv ), n, static_cast <D *>(yv)); return true ;
484- case CVCASE (CMPXX, INTX): set_real_part (static_cast <Z *>(yv), n, static_cast <I *>(wv )); return true ;
482+ case CVCASE (FLX, INTX): std::copy_n (pointer_to_values<I>(w ), n, static_cast <D *>(yv)); return true ;
483+ case CVCASE (CMPXX, INTX): set_real_part (static_cast <Z *>(yv), n, pointer_to_values<I>(w )); return true ;
485484 case CVCASE (B01X, FLX): return convert<D, bool >(jt, w, yv, ((I)jtinplace & JTNOFUZZ) != 0 ? 0.0 : FUZZ);
486485 case CVCASE (INTX, FLX): return convert<D, I>(jt, w, yv, ((I)jtinplace & JTNOFUZZ) != 0 ? 0.0 : FUZZ);
487486 case CVCASE (XNUMX, FLX):
0 commit comments