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
Assertion failed: S_finalize_op (op.c:2562) #14927
Comments
From @geeknikFuzzing perl v5.23.4 (v5.23.3-7-ge120c24) with AFL found the following assertion failure: ~/perl/perl -e 'BEGIN():o' Prototype mismatch: sub main::BEGIN () vs none at -e line 1. gdb output: Program received signal SIGABRT, Aborted. |
From @iabynOn Thu, Sep 24, 2015 at 07:41:54PM -0700, Brian Carpenter wrote:
This is occurring basically because toward the end of compiling BEGIN, This only happens because the attributue application happens at a specific BEGIN { BEGIN {} } don't trigger the same issue. The whole mess in newATTRSUB_x() is beyond my understanding. I think it Can anyone think or a reason why special blocks should be allowed -- |
The RT System itself - Status changed from 'new' to 'open' |
From @ap* Dave Mitchell <davem@iabyn.com> [2015-10-08 16:55]:
Fiddling around with grep.cpan.me I found no use on CPAN whatsoever. There is some very minor use of `sub BEGIN` and some even more minor use
I think it should be an error. But that’s in a vacuum. It has been My expectation is that “just kill it” is not particularly questionable, Regards, |
From @arcAristotle Pagaltzis <pagaltzis@gmx.de> wrote:
This attempt: sub MODIFY_CODE_ATTRIBUTES { () } sub BEGIN :Foo {} does nothing (while emitting no warnings) under 5.6 through 5.14. As Subroutine BEGIN redefined at -e line 1. but the code still executes. (I haven't tried to work out how much of Removing the "sub" keyword from the attribute-attached BEGIN: sub MODIFY_CODE_ATTRIBUTES { () } BEGIN :Foo {} produces this error (or a reworded equivalent as of 5.18) on all Perls Can't call method "Foo" on an undefined value at -e line 1. because it's actually being parsed as the rough equivalent of BEGIN: (do {})->Foo — that is, a statement with the label "BEGIN", in which the "Foo" To summarise: in the past we've had the ability to attach attributes
It seems to me that outlawing it would indeed be safe. But we -- |
Migrated from rt.perl.org#126170 (status was 'open')
Searchable as RT126170$
The text was updated successfully, but these errors were encountered: