modifier, executes the BLOCK once before testing the loop condition.
(On other statements the loop modifiers test the conditional first.)
+C<do BLOCK> does I<not> count as a loop, so the loop control statements
+C<next>, C<last> or C<redo> cannot be used to leave or restart the block.
+
=item do SUBROUTINE(LIST)
A deprecated form of subroutine call. See L<perlsub>.
particular situation, you can just use symbolic references instead, as
in case 6.
+C<eval BLOCK> does I<not> count as a loop, so the loop control statements
+C<next>, C<last> or C<redo> cannot be used to leave or restart the block.
+
+
=item exec LIST
=item exec PROGRAM LIST
#...
}
+C<last> cannot be used to exit a block which returns a value such as
+C<eval {}>, C<sub {}> or C<do {}>.
+
See also L</continue> for an illustration of how C<last>, C<next>, and
C<redo> work.
executed even on discarded lines. If the LABEL is omitted, the command
refers to the innermost enclosing loop.
+C<next> cannot be used to exit a block which returns a value such as
+C<eval {}>, C<sub {}> or C<do {}>.
+
See also L</continue> for an illustration of how C<last>, C<next>, and
C<redo> work.
print;
}
+C<redo> cannot be used to retry a block which returns a value such as
+C<eval {}>, C<sub {}> or C<do {}>.
+
See also L</continue> for an illustration of how C<last>, C<next>, and
C<redo> work.