Server : Apache System : Linux server1.cgrithy.com 3.10.0-1160.95.1.el7.x86_64 #1 SMP Mon Jul 24 13:59:37 UTC 2023 x86_64 User : nobody ( 99) PHP Version : 8.1.23 Disable Function : NONE Directory : /usr/share/doc/perl-Error-0.17020/examples/ |
use lib '.'; use Error qw(:try); @Error::Bad::ISA = qw(Error); $Error::Debug = 1; # turn on verbose stacktrace sub abc { try { try { throw Error::Simple("a simple error"); } catch Error::Simple with { my $err = shift; throw Error::Bad(-text => "some text"); } except { return { Error::Simple => sub { warn "simple" } } } otherwise { 1; } finally { warn "finally\n"; }; } catch Error::Bad with { 1; }; } sub def { unlink("not such file") or record Error::Simple("unlink: $!", $!) and return; 1; } abc(); $x = prior Error; print "--\n",$x->stacktrace; unless(defined def()) { $x = prior Error 'main'; print "--\n",0+$x,"\n",$x; }