# New Ticket Created by "Brian S. Julin" # Please include the string: [perl #131281] # in the subject line of all future correspondence about this issue. # <URL: https://rt.perl.org/Ticket/Display.html?id=131281 >
There are some misbehaviors when a next clause is encountered on what would be the last iteration of a loop construct. An extra Mu is injected into the return value for that iteration, and the termination test may be bypassed. skids: m: my $b; (loop ($b = 4; $b; $b--) { next if $b == 1; $_ }).note (02:05:08 PM) camelia: rakudo-moar 6bb1b5: OUTPUT: «((Any) (Any) (Any) (Mu) (Any) (Any) (Any) (Any) (Any) (Any) (Any) (Any) (Any) (Any) (Any) (Any) (Any) (Any) (Any) (Any) (Any) (Any) (Any) (Any) (Any) (Any) (Any) (Any) (Any) (Any) (Any) (Any) (Any) (Any) (Any) (Any) (Any) (Any) (Any) (Any) (Any) (Any) (A…» m: my $b; (loop ($b = 4; $b > 0; $b--) { next if $b == 1; $b }).note # version without escaping the termination condition (02:13:17 PM) camelia: rakudo-moar 6bb1b5: OUTPUT: «(4 3 2 (Mu))» (02:13:25 PM) skids: still have that Mu.