Branch: refs/heads/blead Home: https://github.com/Perl/perl5 Commit: 7127153a0aa372b27a6d28ba8fbbd332ec8e0eab https://github.com/Perl/perl5/commit/7127153a0aa372b27a6d28ba8fbbd332ec8e0eab Author: Hugo van der Sanden <h...@crypt.org> Date: 2021-02-09 (Tue, 09 Feb 2021)
Changed paths: M dump.c Log Message: ----------- gh18515: extend dumping of PM objects Include RXf_ flags START_ONLY, WHITE and NULL along with the essentially similar SKIPWHITE; dump the flags whenever GETRE(pm) succeeds, not only if there is a check substring. This allows eg `perl -Dx -e 'split /\s+/'` to show whether the intended flags have been set. Commit: 3c7beb8da4692313468432f7e66606e56360d79c https://github.com/Perl/perl5/commit/3c7beb8da4692313468432f7e66606e56360d79c Author: Hugo van der Sanden <h...@crypt.org> Date: 2021-02-09 (Tue, 09 Feb 2021) Changed paths: M t/op/split.t Log Message: ----------- gh18515: tests for special-cased patterns Commit: 459be019bda14de383329366de4cdec161526c3f https://github.com/Perl/perl5/commit/459be019bda14de383329366de4cdec161526c3f Author: Hugo van der Sanden <h...@crypt.org> Date: 2021-02-09 (Tue, 09 Feb 2021) Changed paths: M regcomp.c Log Message: ----------- gh18515: fix special handling of specific split() patterns Commit 122af31004 acted on the wrong assumption that NEXTOPER() and regnext() were equivalent, and in fixing a valgrind complaint tried to simplify code for detecting specific patterns for split() that merited special-case handling by making them all use regnext(). As a result, the special case /\s+/ was no longer correctly detected, resulting in a degree of pessimisation. This commit fixes that, and avoids reading via the calculated 'next' pointer except for the ops we need (in which cases we know it'll point to another regop) - for the EXACT case (which we don't need), valgrind was correctly pointing out that it points to potentially uninitialized data. Compare: https://github.com/Perl/perl5/compare/07b740f3e298...459be019bda1