# New Ticket Created by  Christian Bartolomaeus 
# Please include the string:  [perl #129782]
# in the subject line of all future correspondence about this issue. 
# <URL: https://rt.perl.org/Ticket/Display.html?id=129782 >


We have different tests in roast which are currently failing on JVM             
                                 
because an Int is returned where a Bool is expected. In all cases the           
                                 
problem goes away with --optimize=off. I believe all those tests fail           
                                 
for the same reason.                                                            
                                 
                                                                                
                                 
This might be related to https://rt.perl.org/Ticket/Display.html?id=127951      
                                 
where changing --optimize=2 to --optimize=1 makes the difference.               
                                 
                                                                                
                                 
==== examples taken from roast                                                  
                                 
                                                                                
                                 
$ ./perl6-j -e 'say (1/10 + 1/10 + 1/10 == 0.3).gist' ## 
integration/advent2013-day15.t                          
1                                                                               
                                 
$ ./perl6-j --optimize=off -e 'say (1/10 + 1/10 + 1/10 == 0.3).gist'            
                                 
True                                                                            
                                 
                                                                                
                                 
$ ./perl6-j -e 'my Mu $x = "a" ne ("a"|"b"|"c"); say $x ~~ Bool' ## 
S03-junctions/autothreading.t                
False                                                                           
                                 
$ ./perl6-j --optimize=off -e 'my Mu $x = "a" ne ("a"|"b"|"c"); say $x ~~ Bool' 
                                 
True

$ ./perl6-j -e 'say (0 == 0).HOW' ## S03-operators/basic-types.t                
                                 
Perl6::Metamodel::ClassHOW.new                                                  
                                 
$ ./perl6-j --optimize=off -e 'say (0 == 0).HOW'                                
                                 
Perl6::Metamodel::EnumHOW.new                                                   
                                 
                                                                                
                                 
$ ./perl6-j -e 'say (?^5); say (?^5).^name' ## S03-operators/boolean-bitwise.t  
                                 
False                                                                           
                                 
Int                                                                             
                                 
$ ./perl6-j --optimize=off -e 'say (?^5); say (?^5).^name'                      
                                 
False                                                                           
                                 
Bool                                                                            
                                 
                                                                                
                                 
$ ./perl6-j -e 'say defined("a" => 5) ~~ Bool' ## S32-scalar/defined.t          
                                 
False                                                                           
                                 
$ ./perl6-j --optimize=off -e 'say defined("a" => 5) ~~ Bool'                   
                                 
True

Reply via email to