On Fri, 06 Mar 2015 14:10:06 -0800, [email protected] wrote:
> See http://irclog.perlgeek.de/perl6/2015-03-06#i_10237431 and the next
> few examples.
>
> perl6 -e 'role R does Callable { method foo { self.say } }'
> ===SORRY!===
> Internal error: failed to remove block
>
> Removing the Callable role, or inheriting with 'is' instead of
> composing, makes the error go away. Calling metamethods (.WHAT tested)
> also works.
>
> Even removing the method surrounding the call gives the same error,
> instead of 'no self available'.
Current behavior suggests this has been fixed:
$ perl6 -e 'role R does Callable { method foo { self.say } }'
$ perl6 -e 'role R does Callable { method foo { self.say } }; R.foo'
(R)
$ perl6 -e 'role R does Callable { self.say }; R.foo'
===SORRY!=== Error while compiling -e
'self' used where no object is available
at -e:1
------> role R does Callable {⏏ self.say }; R.foo
expecting any of:
term