#1079: Chaining operator ':=' is ignored in NQP
-----------------------------+----------------------------------------------
 Reporter:  Austin_Hastings  |       Owner:  pmichaud                          
     Type:  bug              |      Status:  new                               
 Priority:  normal           |   Milestone:                                    
Component:  PCT              |     Version:  1.6.0                             
 Severity:  medium           |    Keywords:  NQP, chain, operator:<:=>, binding
     Lang:                   |       Patch:                                    
 Platform:                   |  
-----------------------------+----------------------------------------------
 Chaining a series of binding, like:
 {{{
 my $a;
 my $b;

 $a := $b := 0;
 }}}

 produces code that assigns the first var to the second, but ignores the
 second-third binding entirely:

 {{{
 .namespace []
 .sub "_block11"  :anon :subid("10_1254300777")
 .annotate "line", 1
     new $P13, "Undef"
     .lex "$a", $P13
 .annotate "line", 2
     new $P14, "Undef"
     .lex "$b", $P14
 .annotate "line", 4
     new $P15, "Integer"
     assign $P15, 0
     find_lex $P16, "$b"
     unless_null $P16, vivify_11
     new $P16, "Undef"
   vivify_11:
     store_lex "$a", $P16
 .annotate "line", 1
     .return ($P16)
 .end

 }}}

-- 
Ticket URL: <https://trac.parrot.org/parrot/ticket/1079>
Parrot <https://trac.parrot.org/parrot/>
Parrot Development
_______________________________________________
parrot-tickets mailing list
[email protected]
http://lists.parrot.org/mailman/listinfo/parrot-tickets

Reply via email to