<span style="font-family:courier new,monospace"><br>I just got bitten by different behavior on different platforms,<br>and I can't justify it. Perhaps someone out there can?<br><br>Platform #1: Perl 5.8.8 on Fedora (development system)<br>
Platform #2: Perl 5.8.8 on Debian (production system)<br><br>It turns out my application _did_ have a bug in it, but it wasn't<br>detected during my testing when run on the dev sys, but failed<br>when the same dataset was encountered on the production system.<br>
<br>a) I have 'use strict' and 'use warnings' in my app.<br>b) I had an uninitialized variable used in a print statement.<br><br>On the production machine... my app died with the error:<br>'<span class="st">Use of uninitialized value in concatenation'<br>
just as you would expect.<br><br>But on my dev sys, the app doesn't die, or even complain!<br><br>Once I found out what was happening, I ran it under the debugger on my dev sys,<br>and when I stepped through the print statement... It bitches and dies.<br>
But without the debugger, all is (apparently) happy.<br>(That's why I didn't detect and fix the bug during testing.)<br><br>So...<br>Why would my dev sys only flag and die under the debugger (and not with a normal run)?<br>
And why does my prod system, work correctly (ie. flag and die) ?<br><br><br><br><br> </span></span>