|Perl Monk, Perl Meditation|
Thanks for the feedback :)
> My implementation in the perl core was a compromise between complexity, performance and convenience.
I know, and this is in no way a criticism of your implementation! I'm aware of the complexity.
I want to open an opportunity to better inspect problems in pure Perl.
At work we are using many here docs and help in faster identifying root problems would be appreciated.
See it as a potential add on module like diagnostics and not as a feature request for core.
> It's currently about 750 lines of src code. It could certainly be expanded to extract the variable name under more circumstances, but I had to draw a line somewhere.
That's why I'm delegating the hard part to B::Deparse
> Note also that it's quite hard to avoid false positives
That's why I'm reporting all potential culprits with undef values in the first warning and ignoring all other warnings from the same line.
I don't want to risk that a true positive gets lost because of a false positive.
It's up to the user to find out which are real.