| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
instead of the arena flag, which is not set with PURIFY
|
|
|
|
|
|
|
|
| |
It uses reg_temp_copy to copy the REGEXP onto the destination SV without
needing to copy the underlying pattern structure. This means changing
the prototype of reg_temp_copy, so it can copy onto a passed-in SV, but
it isn't API (and probably shouldn't be exported) so I don't think this
is a problem.
|
|
|
|
|
|
|
| |
This solves the curious crashes in op/fork.t that I'm seeing on *some*
Windows machines. After locating the problem I'm surprised that not
more machines run into these crashes, especially the smoke testers
running on Windows 2000.
|
|
|
|
|
| |
Replace ckWARN_d{,2,3,4}() && Perl_warner() with it, which trades reduced code
size for 1 more function call if warnings are not enabled.
|
|
|
|
|
|
|
| |
Replace ckWARN{,2,3,4}() && Perl_warner() with it, which trades reduced code
size (about 0.2%), for 1 more function call if warnings are not enabled.
However, if we're now in the L1 or L2 cache when we weren't previously, that's
still going to be a speed win.
|
| |
|
|
|
|
|
|
|
|
| |
Fixes RT 69422.
However, I'm not actually sure whether we should even be caching the results of
UTF-8 operations on overloading, given that nothing stops overloading returning
a different value every time it's called.
|
| |
|
|
|
|
| |
file level macro
|
| |
|
|
|
|
| |
Signed-off-by: Yves Orton <demerphq@gemini.(none)>
|
|
|
|
|
| |
Check position relative to end of string length rather than whether
char is NULL at end of initial alphanumerics in Perl_sv_inc
|
|
|
|
| |
This fixes [perl #68590] : %^H not lexical enough.
|
|
|
|
| |
and tweaking Perl_sv_upgrade().
|
| |
|
|
|
|
|
| |
*after* we have called any CLONE methods
(better fix for Variable::Magic than 240bfeb992)
|
|
|
|
|
|
| |
Commit 7c4baf47da introduced the saved_curcop field of PL_parser,
but omitted to copy the entry during interpreter cloning.
This may fix bugs [RT #58468], [RT #59498]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Patch modified to use a boolean rather than an integer for tracking
mro changes in S_glob_assign_ref and test fixed not to warn.
URL: http://rt.perl.org/rt3/Ticket/Display.html?id=60220
From the bug report:
-----------------------------------------------------------------
When creating a subclass dynamically, and when adding
AUTOLOAD dynamically into the parent class, then that
AUTOLOAD is not seen in the method cache, even after
a call to "mro::method_changed_in('Parent')".
It only appears in the method cache after a call
to mro::invalidate_all_method_caches().
The attached test file demonstrates the problem.
This was detected while trying to solve bug 40159 in DBIx::DataModel.
-----------------------------------------------------------------
Message-ID: <20081031132021.GA21341@mars.tony.develop-help.com>
|
|
|
|
|
|
|
|
|
|
| |
This avoids tripping over alignment differences between X* and x*_allocated,
because x*_allocated doesn't have a double in it.
Tidy up the documentation in comments. Eliminate relative_STRUCT_OFFSET() as
it is no longer used. Eliminate use of xpv_allocated, xpviv_allocated,
xpvav_allocated, xpvcv_allocated and xpvfm_allocated, but leave them in the
headers as they are publicly visible.
|
|
|
|
|
|
| |
Calculate memory allocation using regexp and XPVIO, and the offset of the first
real structure member. This avoids tripping over alignment differences between
X* and x*_allocated, because x*_allocated doesn't have a double in it.
|
| |
|
|
|
|
| |
matching entry in perldiag (and fix it so that more of the existing ones do).
|
|
|
|
| |
(that was introduced by 9ef5ed94af)
|
|
|
|
|
|
|
| |
sv_pos_u2b, when utf8 position caching is enabled, treats the uoffset
it is given as real, storing it away for lature use. sprintf, here,
passes the byte length of the string, which causes an invalid offset
to be cached.
|
|
|
|
| |
in scalar context
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(The table is 256 bytes; the run-time initialisation code is larger than this!)
Adapt generate_uudmap.c to generate the initalisation block for PL_bitcount,
writing the code to bitcount.h, using the same approach as uudmap.h.
To preserve binary compatibility:
for MULTIPLICITY:
keep Ibitcount in the interpreter structure, but remove all the macros that
access it. PL_bitcount is a new symbol in the object file, which won't clash
with anything as that name wasn't used before.
otherwise:
keep PL_bitcount as a char *, but initialise it at compile time to a new
constant array PL_bitcount array. Remove the code that attempts to Safefree()
it at interpreter destruction time.
|
|
|
|
| |
Avoid using Newxz() to zero allocate memory we will immediately overwrite.
|
|
|
|
| |
Just 4 uses already give a size saving with gcc -Os.
|
| |
|
|
|
|
|
| |
(There's no need to zero-allocate memory for a structure when you're about to
explicitly allocate every member.)
|
|
|
|
|
|
|
|
| |
As all the structure elements are directly assigned to, use Newx() rather than
Newxz(). Replace the explicit assignments with a direct structure copy. When
reading values from the parent, read from those copied to the new structure,
rather than the identical value in the old structure, to recduce CPU cache
pressure.
|
|
|
|
| |
the address of the structure, with a special case for the first time round.
|
| |
|
| |
|
|
|
|
| |
Change 27942 missed this. (675c862fe1d4abfd048dce5f1958cca54b16c501)
|
| |
|
|
|
|
| |
Change its callers to take advantage of this.
|
| |
|
|
|
|
|
|
|
|
| |
(MacOS support was removed from MakeMaker in 6.22, and merged to blead on
15th December 2004 with 5dca256ec738057dc331fb644a93eca44ad5fa14. After this
point MacOS wouldn't even have been able to build the perl binary, because it
would not have been able to build DynaLoader. If anyone wishes to resurrect
MacOS, start by reversing this commit and the relevant part of that commit.)
|
|
|
|
|
| |
These would only have been relevant if running under 5005 threads, which is long
dead.
|
| |
|
|
|
|
| |
Don't call DESTROY if it's a constant subroutine.
|
| |
|
| |
|
|
|
|
| |
apidocs
|
| |
|
| |
|