New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix xor behavior according to r14547 in [perl6-synopsis] #128
Comments
From @bacekHello. <exp_evalbot> rakudo r28164 OUTPUT[1] Two last statements produces "Undef" instead of expected result. -- |
From @bacekHello. xor still short-circuit but returns Bool::False :) There is patch attached. -- |
From @bacekxor.diffdiff --git a/compilers/pct/src/PAST/Compiler.pir b/compilers/pct/src/PAST/Compiler.pir
index 52ad089..4c91666 100644
--- a/compilers/pct/src/PAST/Compiler.pir
+++ b/compilers/pct/src/PAST/Compiler.pir
@@ -1451,7 +1451,7 @@ a second child is found that evaluates as true.
ops.'push_pirop'('set', ops, bpost)
ops.'push_pirop'('goto', endlabel)
ops.'push'(falselabel)
- ops.'push_pirop'('new', ops, '"Undef"')
+ ops.'push_pirop'('get_hll_global', ops, '["Bool"]', '"False"')
ops.'push'(endlabel)
.return (ops)
.end
|
From @pmichaudOn Thu, Jun 12, 2008 at 03:52:43AM -0700, Vasily Chekalkin wrote:
PCT can't assume that Bool::False will be available, since that's I'll either adjust the C<xor> node to have a 'false value returns' Pm |
The RT System itself - Status changed from 'new' to 'open' |
From @bacekPatrick R. Michaud wrote:
+1 for 'move entirely'. It's very Perl6 specific behavior. -- |
@pmichaud - Status changed from 'new' to 'open' |
From @bacekWorks for me on r32555. |
@bacek - Status changed from 'open' to 'resolved' |
Migrated from rt.perl.org#55666 (status was 'resolved')
Searchable as RT55666$
The text was updated successfully, but these errors were encountered: