@@ -51,12 +51,12 @@ template <typename T> class WaitHandle : public WaitHandleBase {
51
51
T _fini;
52
52
53
53
public:
54
- WaitHandle (T fini) : _fini(fini) {}
54
+ WaitHandle (T && fini) : _fini(std::move( fini) ) {}
55
55
virtual void wait () override { _fini (); }
56
56
};
57
57
58
- template <typename T> WaitHandle<T> *mkWaitHandle (T fini) {
59
- return new WaitHandle<T>(fini);
58
+ template <typename T> WaitHandle<T> *mkWaitHandle (T && fini) {
59
+ return new WaitHandle<T>(std::move ( fini) );
60
60
};
61
61
62
62
extern " C" {
@@ -489,24 +489,24 @@ WaitHandleBase *_idtr_copy_reshape(SHARPY::DTypeId sharpytype,
489
489
}
490
490
}
491
491
492
- SHARPY::Buffer outbuff (totSSz * sizeof_dtype (sharpytype), 2 );
492
+ SHARPY::Buffer sendbuff (totSSz * sizeof_dtype (sharpytype), 2 );
493
493
bufferizeN (iNDims, iDataPtr, iDataShapePtr, iDataStridesPtr, sharpytype, N,
494
- lsOffs.data (), lsEnds.data (), outbuff .data ());
495
- auto hdl = tc->alltoall (outbuff .data (), sszs.data (), soffs.data (), sharpytype ,
496
- oDataPtr, rszs.data (), roffs.data ());
494
+ lsOffs.data (), lsEnds.data (), sendbuff .data ());
495
+ auto hdl = tc->alltoall (sendbuff .data (), sszs.data (), soffs.data (),
496
+ sharpytype, oDataPtr, rszs.data (), roffs.data ());
497
497
498
- if (true || no_async) { // FIXME remove true once IMEX is fixed
498
+ if (no_async) {
499
499
tc->wait (hdl);
500
500
return nullptr ;
501
501
}
502
502
503
- auto wait = [tc = tc, hdl = hdl, outbuff = std::move (outbuff ),
503
+ auto wait = [tc = tc, hdl = hdl, sendbuff = std::move (sendbuff ),
504
504
sszs = std::move (sszs), soffs = std::move (soffs),
505
505
rszs = std::move (rszs),
506
506
roffs = std::move (roffs)]() { tc->wait (hdl); };
507
- assert (outbuff .empty () && sszs.empty () && soffs.empty () && rszs.empty () &&
507
+ assert (sendbuff .empty () && sszs.empty () && soffs.empty () && rszs.empty () &&
508
508
roffs.empty ());
509
- return mkWaitHandle (wait );
509
+ return mkWaitHandle (std::move ( wait ) );
510
510
}
511
511
512
512
// / @brief reshape array
@@ -918,7 +918,7 @@ void *_idtr_update_halo(SHARPY::DTypeId sharpytype, int64_t ndims,
918
918
wait ();
919
919
return nullptr ;
920
920
}
921
- return mkWaitHandle (wait );
921
+ return mkWaitHandle (std::move ( wait ) );
922
922
}
923
923
924
924
// / @brief templated wrapper for typed function versions calling
0 commit comments