| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
Explicitely list the files to modify when upping/checking the VERSION
of the various CoreList modules, for easy copy-and-pasting.
I grew tired of running find.
|
|
|
|
| |
(Whether that's wise is another matter.)
|
| |
|
|
|
|
|
|
| |
Conventionally we name variables of type 'SV**' svp rather than sv.
Calling the var 'sv' in this small function initially confused me,
so rename it.
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
this TODO has been passing on my smoke testers for years, if it turns
out it isn't passing for someone, it should probably be skipped
instead of TODOed to prevent the noise.
|
|
|
|
|
|
| |
on Windows (cygwin) I was getting rare failures creating $copy1 with
an error complaining that it was a directory, possibly due to some
background process tracking directories.
|
|
|
|
|
|
| |
this allows the rest of the test script to run, and will help make other
cygwin test issues more obvious once the other failures are fixed or
worked-around
|
|
|
|
| |
Dangers of having too many login sessions open.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Avoid unnecessary recursion with regex subroutines. When we are inside
of a DEFINE we do not need to, and should not, recurse. And once an
infinite construct has been seen and we are not tracking the start
class then we do not /need/ to, at the cost of possibly pessimizing
minlen checks. For instance in
/(?(DEFINE)(?<p>foo|wozzit))a+(?&p)/
entering 'p' via recursion would only tell us that the minlen was
actually 4 instead of being 1, something that would not make us
match incorrectly. This can be improved in a later commit.
The side effect of not recursing in such situations is that large
patterns such as that in RT #122283 compile in a reasonable amount
of time.
|
| |
|
| |
|
|
|
|
|
| |
use pv_pretty(), add better flags information, and a more compact
recurse bitmap frame outpute, etc.
|
|
|
|
|
|
| |
Sometimes we want things to fit exactly into a specific number
of chars, elipses, quotes and all. Includes make regen update
to make dsv argument nullok.
|
| |
|
|
|
|
|
|
| |
Requires adding a new optional argument to regprop as we do not
have a completed regexp object to give us the names, and we need
to get it from RExC_state.
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
We can reuse previously allocated frames and avoid blowing
up memory during regex compile of complex recursive patterns.
A pattern like that reported in RT #122283 would chew up all
avaiable memory allocating new frames each time it recursed.
|
|
|
|
|
|
|
|
|
|
|
| |
For dumping regex debug state we need some temporary SV's on hand
to pass into regprop() which writes into an SV to do it's thing.
Allocating a new mortal SV every time we want to do this is very
wasteful, and manifests as a "leak" in very long compiles such as
when debugging issues like RT #122283.
By storing the SV's in RExC_state_t we can reuse them during the
compilation process and avoid leaking memory for nothing.
|
|
|
|
|
| |
Rename some members of scan_frame so it is easier to understand what
they are for, in preparation for adding some more members.
|
|
|
|
|
|
| |
/tmp, or wherever tempdir happens.
Happened in IRIX, but applicable anywhere.
|
| |
|
| |
|
|
|
|
|
| |
jhi says properly explaining the long-double and double-double requires
much more detail, so he suggested dropping mentioning it.
|
| |
|
|
|
|
|
|
| |
Using ispell. Ispell does complain about "Acknowledgements", suggesting
"Acknowledgments", but Merriam-Webster recognizes "Acknowledgements" as
a valid variation.
|
| |
|
|
|
|
|
| |
Otherwise, the formatted delta will just list "message" when listing
new errors, instead of the actual messages.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
There was still one niggling nulled nextstate in the execution
sequence in cases like this (the one numbered 4):
$ ./perl -Ilib -MO=Concise -e 'time; our $x; our $y; time'
7 <@> leave[1 ref] vKP/REFC ->(end)
1 <0> enter ->2
2 <;> nextstate(main 1 -e:1) v:{ ->3
3 <0> time[t1] v ->4
- <0> ex-nextstate v ->5
- <1> rv2sv vK/OURINTR,1 ->4
- <$> gv(*x) s ->-
4 <0> ex-nextstate v ->5
- <1> rv2sv vK/OURINTR,1 ->5
- <$> gv(*y) s ->-
5 <;> nextstate(main 3 -e:1) v:{ ->6
6 <0> time[t4] v ->7
-e syntax OK
|