At the time when
cpp pnode->vProcessMsg.splice(pnode->vProcessMsg.end(), pnode->vRecvMsg, pnode->vRecvMsg.begin(), it);
is called, it is certainly pnode->vRecvMsg.end() which makes the
call equivalent to:
cpp pnode->vProcessMsg.splice(pnode->vProcessMsg.end(), pnode->vRecvMsg, pnode->vRecvMsg.begin(), pnode->vRecvMsg.end());
which is equivalent to:
cpp pnode->vProcessMsg.splice(pnode->vProcessMsg.end(), pnode->vRecvMsg);
Thus, use the latter. Further, maybe irrelevant, but the latter has
constant complexity while the original code is O(length of vRecvMsg).
This is a backport of core#26888
Depends on D18243