P:\test>perl use strict; use warnings; my $x=""; print substr($x,2,1); # crashes here print "Alive!\n"; # not reached ^Z substr outside of string at - line 4. Use of uninitialized value in print at - line 4. Alive! P:\test>c:\perl561\bin\perl5.6.1.exe use strict; use warnings; my $x=""; print substr($x,2,1); # crashes here print "Alive!\n"; # not reached ^Z substr outside of string at - line 4. Use of uninitialized value in print at - line 4. Alive! P:\test>