# New Ticket Created by Alex Jakimenko
# Please include the string: [perl #126630]
# in the subject line of all future correspondence about this issue.
# <URL: https://rt.perl.org/Ticket/Display.html?id=126630 >
Code:
sub test { BEGIN { &?ROUTINE.name } }
Result:
===SORRY!=== Error while compiling /home/alex/perl6test/./test3.pl
An exception occurred while evaluating a BEGIN
at /home/alex/perl6test/./test3.pl:2
Exception details:
===SORRY!=== Error while compiling
Cannot call method 'name' on a null object
at :
Whoops! It seems like it errored out while producing the error message.
That's so cool!
I don't think that someone will stumble upon this particular code ever, but
perhaps there are other times when it could break like this?
Interestingly, we can keep adding BEGIN blocks and we will be getting
different funny messages:
sub test {
BEGIN { BEGIN { &?ROUTINE.name; } }
}
Result:
===SORRY!=== Error while compiling /home/alex/perl6test/./test3.pl
An exception occurred while evaluating a BEGIN
at /home/alex/perl6test/./test3.pl:3
Exception details:
===SORRY!=== Error while compiling
ctxcode needs an MVMContext
at :
Or even more:
sub test {
BEGIN { BEGIN { BEGIN { &?ROUTINE.name; } } }
}
Result:
===SORRY!=== Error while compiling /home/alex/perl6test/./test3.pl
An exception occurred while evaluating a BEGIN
at /home/alex/perl6test/./test3.pl:3
Exception details:
===SORRY!=== Error while compiling
ctxouter needs an MVMContext
at :
Maybe somebody could find a way to make it more brutal? :)