James Edward Gray II wrote:
eval() shouldn't be squawking there, as I understand it. Those look like die() statements to me too, yet the program keeps running. Hmm.
I dont know - I believe we are missing something basic prolly:
# My Version -
#!/usr/bin/perl
use strict; use warnings;
my @strings = ( q(my $bad_syntax = ;), q('a poorly 'nested' string'), q('a poorly 'nested::test' string') );
foreach (@strings) { print "\nCode: $_\n";
print "\nDisabling warnings...\n"; no warnings;
print "Calling eval()...\n"; eval; print "eval() complete.\n\n";
print "Handling error...\n"; print "Caught error: $@"; }
__END__
All I can say is while "no warnings" are in effect Perl trys to
"Do The Right Thing"
In this instance it wants to live.
I don't believe those are warning messages you are seeing. If you made the same mistake in actual code, it would not run. Those are the messages you would see on the way down. Only, it's not going down here.
This should be easy to prove to yourself. Commenting out the 'no warnings;' line has no effect.
James
-- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] <http://learn.perl.org/> <http://learn.perl.org/first-response>