diff --git a/src/Perl6/Optimizer.nqp b/src/Perl6/Optimizer.nqp index fac0ca42f05..660b83794fe 100644 --- a/src/Perl6/Optimizer.nqp +++ b/src/Perl6/Optimizer.nqp @@ -3787,20 +3787,20 @@ class Perl6::Optimizer { $op.op('stmts'); $op.push(QAST::Stmts.new( -# my uint $it := $start - $step +# my int $it := $start - $step QAST::Op.new( :op, QAST::Var.new( - :name($it_var), :scope, :decl, :returns(uint) + :name($it_var), :scope, :decl, :returns(int) ), nqp::istype($start, QAST::IVal) ?? QAST::IVal.new( :value($start.value - $step) ) !! QAST::Op.new( :op, $start, QAST::IVal.new( :value($step))) ), -# my uint $last := $end +# my int $last := $end QAST::Op.new( :op, QAST::Var.new( - :name($last_var), :scope, :decl, :returns(uint) + :name($last_var), :scope, :decl, :returns(int) ), $end ), @@ -3820,19 +3820,19 @@ class Perl6::Optimizer { QAST::Op.new( op => $step < 0 ?? "isge_i" !! "isle_i", QAST::Op.new( :op, - QAST::Var.new(:name($it_var), :scope, :returns(uint)), + QAST::Var.new(:name($it_var), :scope, :returns(int)), QAST::Op.new( :op, - QAST::Var.new(:name($it_var),:scope,:returns(uint)), + QAST::Var.new(:name($it_var),:scope,:returns(int)), QAST::IVal.new( :value($step) ) ) ), - QAST::Var.new(:name($last_var), :scope, :returns(uint)) + QAST::Var.new(:name($last_var), :scope, :returns(int)) ), # nqp::call($callee, $it) QAST::Op.new( :op, QAST::Var.new(:name($callee_var), :scope ), - QAST::Var.new(:name($it_var), :scope, :returns(uint)) + QAST::Var.new(:name($it_var), :scope, :returns(int)) ) ),