Branch: refs/heads/blead Home: https://github.com/Perl/perl5 Commit: 96673a4bb36a973a9a4c5cd0e5727a799789a32c https://github.com/Perl/perl5/commit/96673a4bb36a973a9a4c5cd0e5727a799789a32c Author: Lukas Mai <lukasmai....@gmail.com> Date: 2025-07-23 (Wed, 23 Jul 2025)
Changed paths: M op.c M t/op/for-many.t Log Message: ----------- newFOROP: fix crash when optimizing 2-var for over builtin::indexed OP_ENTERSUB isn't necessarily a LISTOP, apparently, so we can't just grab its op_last. Instead, copy/paste logic from elsewhere in op.c to find the cvop. Also, avoid crashing on "fake" pad entries that represent lexical subs from outer scopes by climbing up the scope chain until we reach a real pad entry. Fixes #23405. Commit: 55ce815fbe0b4bd9a5bc1484cf48330d53977d75 https://github.com/Perl/perl5/commit/55ce815fbe0b4bd9a5bc1484cf48330d53977d75 Author: Lukas Mai <lukasmai....@gmail.com> Date: 2025-07-23 (Wed, 23 Jul 2025) Changed paths: M t/perf/opcount.t Log Message: ----------- perf/opcount.t: ensure imported builtins are optimized When I saw (in #23429) that use builtin qw(indexed); sub { for my ($x, $y) (indexed) {} } crashes, but sub { for my ($x, $y) (builtin::indexed) {} } works fine, I realized that optrees for calls to lexically imported subs look different from calls to package subs. This commit make sure both call variants are optimized to direct ops. Commit: 7aa27d7640d9bdffb6f6a47760bc18c38c0caa99 https://github.com/Perl/perl5/commit/7aa27d7640d9bdffb6f6a47760bc18c38c0caa99 Author: Lukas Mai <lukasmai....@gmail.com> Date: 2025-07-23 (Wed, 23 Jul 2025) Changed paths: M pod/perldelta.pod Log Message: ----------- perldelta for the 2-var 'for' crash (#23405) Commit: 404e37b805ecb8437a20016b131eb434a4b0b21e https://github.com/Perl/perl5/commit/404e37b805ecb8437a20016b131eb434a4b0b21e Author: Lukas Mai <lukasmai....@gmail.com> Date: 2025-07-23 (Wed, 23 Jul 2025) Changed paths: M op.c Log Message: ----------- op.c: factor out repeated entersub code ... for locating the beginning of the argument list and the end (which is the entered sub itself) in the op tree. Compare: https://github.com/Perl/perl5/compare/d83bd2549fce...404e37b805ec To unsubscribe from these emails, change your notification settings at https://github.com/Perl/perl5/settings/notifications