void Constraint::set_sharing_policy(SharingPolicy policy, const s4u::NonLinearResourceCb& cb)
{
- xbt_assert(!cb || (cb && policy == SharingPolicy::NONLINEAR),
+ xbt_assert(policy == SharingPolicy::NONLINEAR || not cb,
"Invalid sharing policy for constraint. Callback should be used with NONLINEAR sharing policy");
sharing_policy_ = policy;
dyn_constraint_cb_ = cb;
}
// Check if the blocks are already matched together:
- if (state.equals_to_<1>(block1, frag1).valid_ && state.equals_to_<2>(block2, frag2).valid_ && offset1 == offset2 &&
+ if (state.equals_to_<1>(block1, frag1).valid_ && state.equals_to_<2>(block2, frag2).valid_ &&
state.fragmentsEqual(block1, frag1, block2, frag2)) {
if (match_pairs)
state.match_equals(previous);
// This is a finished detached request, let's return this one
comms.clear(); // don't do the waitany call afterwards
index = i;
- if (requests[index] != MPI_REQUEST_NULL && (requests[index])->flags_ & MPI_REQ_NBC)
+ if (requests[index]->flags_ & MPI_REQ_NBC)
finish_nbc_requests(&requests[index], 0);
finish_wait(&requests[i], status); // cleanup if refcount = 0
if (requests[i] != MPI_REQUEST_NULL && (requests[i]->flags_ & MPI_REQ_NON_PERSISTENT))