develooper Front page | perl.perl5.porters | Postings from June 2013

[perl #118691] Perl crash on usage of index [-1] for array in subroutine call

Thread Previous | Thread Next
Father Chrysostomos via RT
June 29, 2013 17:14
[perl #118691] Perl crash on usage of index [-1] for array in subroutine call
Message ID:
On Sat Jun 29 08:06:12 2013, jkeenan wrote:
> Your fourth call is not equivalent to your third call.  There's no '//'
> operator imposing a context on $array[-1].  Perl looks at that variable
> directly and notes that it runs afoul of the error condition described
> above.  You're asking for $array[-1] to spring to life.  I'm sure that
> there are others who can explain better than I can why we treat that as
> a fatal error -- but fatal it is nonetheless.

Whether this is a bug or no, it is certainly surprising--and fixable.

It’s just a matter of tweaking the defer logic in pp_aelem.  Then rvalue
uses of $_[0] within the function will just work, but assignment to
$_[0] will croak with the same error (i.e., the error will be delayed as
long as possible).


Father Chrysostomos

via perlbug:  queue: perl5 status: open

Thread Previous | Thread Next Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at | Group listing | About