On 05.07.2017 18:27, Bill Moseley wrote:
> Haven't those issues with eval been addressed in more recent versions of
> Perl?  
> 
> For example, in older Perls this used to reset $@, but now $@ is retained:
> 
> use strict;
> use warnings;
> 
>     sub Foo::DESTROY {
>         print "in Foo Destroy\n";
>         eval { 1 };
>         print "Foo has \$@ as '$@'\n"
>         return;
>     }
> 
>     eval {
>         my $foo = bless {}, 'Foo';
>         die "BOOM\n";
>     };
>     print "eval with $@\n";
> 
> 
> Returns:
> 
>     in Foo Destroy
>     Foo has $@ as ''
>     eval with BOOM
> 

Thomas Klausner in one of his posts provided the following link:
http://blog.twoshortplanks.com/2011/06/06/unexceptional-exceptions-in-perl-5-14/

>From reading it, I have got the impression that the behavior in 5.14 has
been drastically improved, but that not all problems are solved. I have
to re-read, though (being new to exception handling in Perl).

Thanks for your help!

Regards,

Binarus

Reply via email to