This looks like a rule invocation bug to me -- if I change the code to
use $str ~~ / <A::sp> /  then it appears to work fine:

$ cat x
grammar A {
    token foo { ^ [<alnum>||<sp>]+ $ };
    token sp { ' ' | \n };
}

say ?(" " ~~ /<A::sp>/);
say ?("\n" ~~ /<A::sp>/);

say ?("foo" ~~ /<A::foo>/);
say ?("foo bar" ~~ /<A::foo>/);
say ?("foo\nbar" ~~ /<A::foo>/);

$ ./parrot perl6.pbc x
1
1
1
1
1
$

Closing ticket.

Pm

Reply via email to