Heh, what a clusterfuck! OK let's try to untangle this ticket.

The second issue mentioned in this ticket (MVMArray: Can't pop from an empty
array) was fixed. ✓
Output on all releases:
https://gist.github.com/Whateverable/5d30c8b09af4ddee8bdb67693cd0f6e0
Fixed in (2015-03-30)
https://github.com/rakudo/rakudo/commit/2b303a0dcffdda7f833ff9bef01a6e833e2c2422

Therefore, 「testneeded」.


As for the OP, it seems to be fixed too, but the code is probably not supposed
to work. See:

'a' _post_l_

↑ There's whitespace before the postfix and that's not supposed to work. It
also doesn't help that the chosen operator is a valid identifier.

That said:

say _pre_l_ 'a'_post_l_ # OUTPUT:

===SORRY!=== Error while compiling /home/alex/./deleteme.pm6
Operators '_pre_l_ ' and '_post_l_' are non-associative and require parentheses
at /home/alex/./deleteme.p6:7
------> say _pre_l_ 'a'_post_l_⏏<EOL>
expecting any of:
postfix


As per the last comment, there's no unary associativity, so my best guess is
that it is not supposed to work (at least at this point).

So we can change the code like the error message suggests:

say (_pre_l_ 'a')_post_l_ # OUTPUT: «<(a)>␤»

Note that the other way is not going to work because it looks too much like a
method call. But that works! ✓

Here's the output on all releases:
https://gist.github.com/Whateverable/f80d6512dedef6a7914d9d24a7f27138
And that's when it was fixed: (2017-04-04)
https://github.com/rakudo/rakudo/commit/f9f0883c6cef3695c5150d336f5e6552e1be4a4c

So I'd say 「testneeded」 (that is, two tests needed), but see RT#131099 for
further progress on assoc with non-infix ops.

Reply via email to