| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
| |
We were not validating that when (?<=a|ab) matched that the right hand
side of the match lined up with the position of the assertion. Similar
for (?<!a|ab) and related patterns, eg, (*positive_lookbehind:).
Note these problems do NOT affect lookahead.
Part of the difficulty here was that the SUCCEED node was serving too
many purposes, necessitating a new regop LOOKBEHIND_END.
Includes more tests for various lookahead or lookbehind cases.
|
|
|
|
|
|
|
|
| |
Remove doubled line in the "Testing" section.
For: https://github.com/Perl/perl5/pull/19443
Committer: Bernd is now a Perl author
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
This needs an update to known_pod_issues.dat because the Pod has trailing
whitespace to avoid parts of the same verbatim code block getting separated.
|
|
|
|
|
| |
It's a simpler alias for -0777. It was proposed in RFC-0011:
https://github.com/Perl/RFCs/blob/master/rfcs/rfc0011.md
|
|
|
|
|
|
|
| |
This reverts commit d0b5de5644ac01ea2ccdbd8cbe7dd9c5fe225af4
which itself reverted ee428a211d040dc56d9efc4a89c96886a398fc1c
See http://nntp.perl.org/group/perl.perl5.porters/257128
|
|
|
|
|
|
|
|
|
|
| |
This changes the name_list_idx attribute from I32 to a U32 as it will
never be negative, and as of a963d6d5acabdd8c7 a 0 can be safely used
to represent "no value" for items in the 'data' array.
I noticed this while cleaning up the offsets debug logic and updating
the perlreguts documentation, so I figured I might as well clean it up
at the same time.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This code was added by Mark Jason Dominus to aid a regex debugger
he wrote for ActiveState. The basic premise is that every opcode
in a regex can be attributed back to a contiguous sequence of characters
that make up the pattern. This assumption has not been true ever since
the "jump" TRIE optimizations were added to the engine.
I spoke to MJD many years ago about whether it was ok to remove this
from the regex engine and he said he had no objections.
An example of a pattern that cannot be handled correctly by this logic is
/(?: a x+ | b y+ | c z+ )/x
where the
(?:a ... | b ... | c ...)
parts will now be handled by the TRIE logic and not by the BRANCH/EXACT
opcodes that it would have been in the past. The offset debug output
cannot handle this type of transformation, and produce nonsense output
that mention opcodes that have been optimized away from the final program.
The regex compiler is complicated enough without having to maintain this
logic. There are essentially no tests for it, and the few tests that do
cover it do so as a byproduct of testing other things. Despite the offsets
logic only being used in debug supporting it does have a cost to non-debug
logic as various internal routines include parameters related to it that
are otherwise unused.
Note this output is only usable or visible by enabling special flags
in re.pm, there is no formal API to access it short of parsing the
output of the debug mode of the regex engine, which has changed multiple
time over the past years.
|
|
|
|
|
|
|
| |
Various changes have been made to struct regexp_internal over
time which have not been documented. This updates the docs to
match the code as it is now in preparation of changing the docs
in subsequent commits.
|
|
|
|
|
|
| |
The list is still valid in the current Unicode version, which is much
later than the one listed as it being valid for. This could have caused
concern that it was out-dated.
|
|
|
|
|
|
| |
Committer: Sergey Zhmylove is now a Perl author
For: https://github.com/Perl/perl5/pull/19422
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
Remove the perldiag entry for `my` in false conditional, and change
the perldiag entries to past tense.
Also correct the description of what actually happened to
`File::Glob::glob()`.
|
|
|
|
| |
This changes this doc to reflect the changes in the past few commits
|
| |
|
| |
|
|
|
|
| |
in signatured subs
|
|
|
|
|
|
|
|
|
|
|
| |
The following code will no longer warn:
use warnings 'redefine';
sub foo {}
local *foo = sub{};
The main purpose of local() is to temporarily redefine stuff, so it
doesn't make sense to warn about it.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
GH #19344
Provide a sample for sort using function signature.
|
| |
|
|
|
|
| |
"finally" and not "defer"
|
| |
|
| |
|
| |
|
|
|
|
| |
No code changes are needed.
|
|
|
|
|
|
|
|
|
|
| |
This effectively reverts 3ece276e6c0.
It turns out this was a bad idea to make U mean the non-native official
Unicode code points. It may seem to make sense to do so, but broke
multiple CPAN modules which were using U the previous way.
This commit has no effect on ASCII-platform functioning.
|
|
|
|
|
|
|
|
| |
Morgan'.
Committer: Ivan Panchenko is now a Perl author
For: https://github.com/Perl/perl5/pull/19298
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This commit moves us a step forward on eliminating 'master/slave' terminology.
Its scope is limited to those files within the Perl 5 core distribution which
are not CPAN-upstream. Within that scope, we leave untouched the use of the
term 'slave' in epigraphs and other literary quotations and its use in data
coming from outside sources (e.g., Unicode code points).
Increment $VERSION in lib/perl5db.pl. Revisions per rjbs feedback.
For: https://github.com/Perl/perl5/pull/19227
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
This is a fix for a bug introduced two months ago in v5.35.5.
|
| |
|