diff options
author | Vincent Pit <vince@profvince.com> | 2011-11-20 11:56:11 +0100 |
---|---|---|
committer | Vincent Pit <vince@profvince.com> | 2011-11-20 11:56:41 +0100 |
commit | 7c864bb3ffceec4b5c696507d5fc0d4e9e2f13b3 (patch) | |
tree | d5efd902c10f6968c168595552f785075de62097 /pod/perldelta.pod | |
parent | cbd87d8d73269d0f60e1d5c404627169d56ed661 (diff) | |
download | perl-7c864bb3ffceec4b5c696507d5fc0d4e9e2f13b3.tar.gz |
Handle require() on implicit $_ properly w/r global overrides
Those require() calls are compiled as BASEOPs, so it is invalid to look for
their op_first member when they are translated to a call to the global
override subroutine. The new entersub call should get $_ in its argument
list instead.
This fixes [perl #78260].
Diffstat (limited to 'pod/perldelta.pod')
-rw-r--r-- | pod/perldelta.pod | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/pod/perldelta.pod b/pod/perldelta.pod index b9e3631495..1e6c7eac17 100644 --- a/pod/perldelta.pod +++ b/pod/perldelta.pod @@ -580,6 +580,12 @@ the warnings would occur if enabled in the comparison routine's scope. C<Internals::SvREFCNT> now behaves consistently in 'get' and 'set' scenarios [perl #103222] and also treats the reference count as unsigned. +=item * + +Calling C<require> on an implicit C<$_> when C<*CORE::GLOBAL::require> has +been overridden does not segfault anymore, and C<$_> is now passed to the +overriding subroutine [perl #78260]. + =back =head1 Acknowledgements |