As I understand this bug report, the problem was this:

<doy> r: sub s () { given 9 { return 0 when $_ %% 3; 1 } }; say s;
<p6eval> rakudo c8de2e: OUTPUT«0␤»

As the subject says the "s;" was parsed as a subroutine call by Rakudo. Back in 
2012 the bug could have been shown a bit shorter:

$ perl6 -e 'sub s { say 42 }; s;'
42

Now we get:

$ perl6 -e 'sub s { say 42 }; s;'
===SORRY!===
Regex not terminated.
at -e:1
------> sub s { say 42 }; s;⏏<EOL>

The "s;" is no longer parsed as a subroutine call, instead we get a parsing 
error. That's the correct behaviour -- and also how STD parses the code:

$ viv -c -e 'sub s { say 42 }; s;'
===SORRY!===
Regex not terminated at (eval) line 1 (EOF):
------> sub s { say 42 }; s;⏏<EOL>
Parse failed

I'll add a test and close the ticket. Please correct me if I misunderstood the 
problem.

Reply via email to