my $i=0; target(); sub target { rec(); TARGET: print "END"; } sub rec { $i++; print "IN $i\n"; goto TARGET if ($i>5); # return skipping multiple levels rec(); # 6 levels recursive call print "OUT $i\n"; # never reached } #### IN 1 IN 2 IN 3 IN 4 IN 5 IN 6 END