$~ という変数名にこだわる必要がなければ、
yield pos, $~
で良いと思うけど。