File tree Expand file tree Collapse file tree 1 file changed +21
-0
lines changed Expand file tree Collapse file tree 1 file changed +21
-0
lines changed Original file line number Diff line number Diff line change @@ -434,6 +434,27 @@ manager will later use a regex to expand these into links.
434434
435435XXX
436436
437+ =item * C<&CORE::__CLASS__> no longer returns invalid results
438+
439+ C<CORE::__CLASS__> would work as expected when used as a bareword or aliased:
440+
441+ use feature qw(class);
442+ class Foo {
443+ BEGIN { *cls = \&CORE::__CLASS__; }
444+ method bar() {
445+ my $class1 = CORE::__CLASS__; # ok
446+ my $class2 = cls; # ok
447+ }
448+ }
449+
450+ But when called with an ampersand (C<&CORE::__CLASS__()>) or through a
451+ reference (C<< my $ref = \&CORE::__CLASS__; $ref->() >>), it would return
452+ unrelated strings. These runtime calls have been fixed to throw an error of the
453+ form C<&CORE::__CLASS__ cannot be called directly> instead of silently
454+ returning incorrect results.
455+
456+ [GH #23737]
457+
437458=item * C<parse_subsignature()> can now handle empty subroutine signatures
438459
439460Previously, calling the C<parse_subsignature()> API function with an empty
You can’t perform that action at this time.
0 commit comments