Is this package somehow defeating perl's normal error-reporting mechanisms?
No, the messages are warnings, not errors (i.e. exceptions). They appear because Math::Complex invokes the warnings pragma on line 73 of the source code (version 1.59).
Carp::Always will display the line number you are seeking. But it won’t produce a stack trace, because no exception is thrown:
3:06 >perl 573_SoPW.pl Use of uninitialized value $z2 in multiplication (*) at C:\Perl\lib\pe +rl5/Math/Complex.pm line 489. Math::Complex::_multiply('Math::Complex=HASH(0x186e5e4)', unde +f, '') called at 573_SoPW.pl line 5 Use of uninitialized value $z2 in multiplication (*) at C:\Perl\lib\pe +rl5/Math/Complex.pm line 489. Math::Complex::_multiply('Math::Complex=HASH(0x186e5e4)', unde +f, '') called at 573_SoPW.pl line 5 0 3:06 >
Hope that helps,
| Athanasius <°(((>< contra mundum | Iustus alius egestas vitae, eros Piratica, |
In reply to Re: how to force a stack trace
by Athanasius
in thread how to force a stack trace
by bcrowell2
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |