[tpm] why wouldn't violating "use warnings" always be fatal?

Matthew Phillips mattp at cpan.org
Fri Aug 22 11:35:47 PDT 2014

Hard to say anything without code that demonstrates the behavior.


On Fri, Aug 22, 2014 at 2:32 PM, Fulko Hew <fulko.hew at gmail.com> wrote:

> I just got bitten by different behavior on different platforms,
> and I can't justify it. Perhaps someone out there can?
> Platform #1: Perl 5.8.8 on Fedora    (development system)
> Platform #2: Perl 5.8.8 on Debian    (production system)
> It turns out my application _did_ have a bug in it, but it wasn't
> detected during my testing when run on the dev sys, but failed
> when the same dataset was encountered on the production system.
> a) I have 'use strict' and 'use warnings' in my app.
> b) I had an uninitialized variable used in a print statement.
> On the production machine... my app died with the error:
> 'Use of uninitialized value in concatenation'
> just as you would expect.
> But on my dev sys, the app doesn't die, or even complain!
> Once I found out what was happening, I ran it under the debugger on my dev
> sys,
> and when I stepped through the print statement... It bitches and dies.
> But without the debugger,  all is (apparently) happy.
> (That's why I didn't detect and fix the bug during testing.)
> So...
> Why would my dev sys only flag and die under the debugger (and not with a
> normal run)?
> And why does my prod system, work correctly (ie. flag and die) ?
> _______________________________________________
> toronto-pm mailing list
> toronto-pm at pm.org
> http://mail.pm.org/mailman/listinfo/toronto-pm
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.pm.org/pipermail/toronto-pm/attachments/20140822/f5c63d2d/attachment.html>

More information about the toronto-pm mailing list