This causes the block to be freed when the forward: handler returns (assuming it's not yet another builtin). This is necessary so calling a lot of forwarded messages in a loop doesn't leak memory (though it will get freed eventually).