You can override CORE::GLOBAL::die to throw an exception object
Yes, but it wouldn't work for Perl errors such as the one the OP wants to capture, "Can't use an undefined value as a symbol reference".
The only thing overriding CORE::GLOBAL::die won't catch is compile-time parser errors
It won't catch run-time errors or XS errors either. Perl and XS don't call die, a Perl-space function. They call C function croak (not the one from Carp). Therefore, it only catches user-thrown errors.
In reply to Re^2: Capturing stack trace in eval
by ikegami
in thread Capturing stack trace in eval
by brycen
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |