This is the mail archive of the mailing list for the Cygwin project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: bug in Cygwin perl 5.6.1?

Am 2 Feb 2002 um 17:58 hat Rhet Turnbull geschrieben:

>Gerrit P. Haase wrote:
>> Why?  Where is docu about this?
>The perl documentation for $^S in the perlvar manpage states:
>$^S     Current state of the interpreter.  Undefined if
>        parsing of the current module/eval is not finished
>        (may happen in $SIG{__DIE__} and $SIG{__WARN__}
>        handlers).  True if inside an eval(), otherwise
>        false.
>The "True if inside an eval(), otherwise false" is what I was getting at.  I

Previous mail:

>>>There seems to be a bug in Cygwin's perl (5.6.1). The
>>>following code:
>>>perl -e 'print $^S || 0;eval {print $^S || 0}; print
>>>$^S || 0;'
>>>should produce '010'

>ran into this since I was writing a custom SIG{__DIE__} handler (which needs
>to know if you're inside an eval where die is an exception catching
>mechanism or in normal code where die means to exit with error.)  The bug is
>that after executing an eval(), $^S stays true even though it should be
>false outside the scope of the eval.

Hmmm, I'm still confused a little.  Isn't '010' as TRUE as '011'?

>I reported this to perlbug and they've acknowledged that it's a known bug
>that will be fixed in next release.



Unsubscribe info:
Bug reporting:

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]