Libpvm automatically removes the sender from the tid list passed to mcast. It seems more often to be the case that the sender doesn't want to get a copy of the message, even if it is in the list of addresses.
If the sender must get the message too, you'll need to send the message explicitly with, f.e.:
pvm_send(pvm_mytid(), code);
Or to do it more efficiently, after the mcast, call:
pvm_setrbuf(pvm_getsbuf());