c:\@Work\Perl>perl -wMstrict -le "sub foo {} my $u; ;; print 'before block'; { print 'in block'; sub foo {} print $u; my $r = substr 'x', 5, 5; } print 'still running after block'; " Subroutine foo redefined at -e line 1. before block in block Use of uninitialized value $u in print at -e line 1. substr outside of string at -e line 1. still running after block #### c:\@Work\Perl>perl -wMstrict -le "sub foo {} my $u; ;; print 'before block'; { print 'in block'; no warnings qw(uninitialized substr); sub foo {} print $u; my $r = substr 'x', 5, 5; } print 'still running after block'; " Subroutine foo redefined at -e line 1. before block in block still running after block