Rafael Garcia-Suarez <[EMAIL PROTECTED]> wrote:
:On 8/18/05, Peter Scott <[EMAIL PROTECTED]> wrote:
:> This recently bit me:
:> 
:> $ perl -wle 'print 42 if defined($h{foo}++)'
:> 42
:> 
:> Now, before thousands of you reach for the flamethrowers, yes, I know
:> - now - that this is documented.  I found it in perlop right where it
:> ought to be:
:> 
:> | undef is always treated as numeric, and in particular is changed to 0
:> | before incrementing (so that a post-increment of an undef value will
:> | return 0 rather than undef).
:
:This was documented by Hugo as change 19014 :
:http://public.activestate.com/cgi-bin/perlbrowse?patch=19014
:Hugo, any comment on this ?

I'd much rather the behaviour were as Peter requests, but my synopsis
in the thread covers my reasoning.

Hugo

Reply via email to