-
Notifications
You must be signed in to change notification settings - Fork 571
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
last LABEL issues when last is called in BEGIN #14270
Comments
From @exodistThis issue effects multiple versions of perl, but in different ways. I have Here is the output in 5.20.1 and 5.10.1 5.20.1 ok 1 - outer eval 1 completed
5.10.1 ok 1 - outer eval 1 completed
|
From @cpansproutOn Sun Nov 23 16:34:34 2014, exodist7@gmail.com wrote:
Here is a simplified case: $ ./perl -Ilib -e 'FOO: { eval "BEGIN { last FOO }" or die $@ }' $ perl5.14.4 -e 'FOO: { eval "BEGIN { last FOO }" or die $@ }' $ perl5.18.1 -e 'FOO: { eval "BEGIN { last FOO }" or die $@ }' Fixing this is very hard. ‘last’ expects to be able to find the target op and return that to the runloop. But with BEGIN we have multiple nested runloopss. I think the only way to fix it is to use the equivalent of ‘die’ internally to get to the right runloop. But that involves longjmping, which is something I stay away from. :-) -- Father Chrysostomos |
The RT System itself - Status changed from 'new' to 'open' |
Migrated from rt.perl.org#123287 (status was 'open')
Searchable as RT123287$
The text was updated successfully, but these errors were encountered: