- changed status to resolved
upcxx::rpc broken when mixing arguments of type T&& and dist_object&
Issue #361
resolved
RPC callbacks which accept both a dist_object&
and T&&
(for T not trivially copyable) will not compile with an error approximating that T const&
can't be passed into a T&&
.
upcxx::dist_object<int> dob(0);
upcxx::rpc(0, [](dist_object<int>&, std::vector<int>&&) {}, dob, std::vector<int>{}); // DEATH
PR 178 explains the details, introduces a breaking test, and fixes the issue.
Comments (1)
-
- Log in to comment
FWIW I was unable to reproduce this problem in the 2020.3.0 release or develop @ 049229e (immediately prior to pull request #178).
I suspect it was both introduced and fixed during pull request #178 (merged in 1738a9d)