Reports by commit
Recent reports
Perl5 CoreSmokeDB
Github
Changes
Branch:
blead
maint-5.42
maint-5.40
maint-5.10
smoke-me/jkeenan/sync-win32-20260515
smoke-me/jkeenan/sync-io-socket-ip-20260515
smoke-me/tonyc/selfloader-mixed-io-again
smoke-me/jkeenan/sync-archive-tar-20260511
-- I want an older branch --
Reports for branch
maint-5.10
Show duplicate emailed reports
Filter:
?
Nicholas Clark: PL_registered_mros can start with 1 hash bucket, as it will probably never contain more than "dfs", and even if C3 is loaded, 2 buckets are less than the default of 8.
C
Rafael Garcia-Suarez: Bump switch version to 2.14
C
Rafael Garcia-Suarez: Make Switch.pm skip POD like perl does
C
Rafael Garcia-Suarez: Fix line numbering issues with POD filtered by Switch.pm
C
Rafael Garcia-Suarez: Switch.pm doesn't appear to support plain arrays and hashes in case().
C
Rafael Garcia-Suarez: Let us direct Switch questions to P5P.
C
Jerry Hedden: Handle non-numeric version numbers in ext/Digest/MD5/Makefile.PL
C
Nicholas Clark: Add casts to gain C++ compatibility, as spotted by Yves.
C
Nicholas Clark: Break out the set-the-MRO logic from the XS_mro_set_mro into Perl_mro_set_mro(), which can be called from C code (such as the guts of extensions).
C
Nicholas Clark: Optimisation of the use of the meta structure - don't create a hash if all we are dealing with is data for the current MRO. Instead the direct pointer "owns" the (reference to the) data, with the hash pointer left as NULL to signal this.
C
Nicholas Clark: Remove the comment that the mro:: functions are actually in the core interpreter, hence you don't actually need to use mro; This should have remained an implementation detail, as it limits the scope to move things around within a stable br
C
Nicholas Clark: Proper pluggable Method Resolution Orders. 'c3' is now implemented outside the core, in ext/mro/mro.xs. Also move mro::_nextcan() to mro.xs. It needs direct access to S_mro_get_linear_isa_c3(), and nothing on CPAN calls it, except via meth
C
Nicholas Clark: Explictly export Perl_mro_meta_init() so that HvMROMETA() can become part of the public API and be used outside the core. However, leave Perl_mro_meta_init() as a private implementation detail.
C
Nicholas Clark: Add Perl_mro_register() to register Method Resolution Orders, Perl_mro_get_from_name() to retrieve MROs by name, and PL_registered_mros to store them in. Abolish the static array of mros, and instead register the dfs and c3 MRO structures.
C
Nicholas Clark: Add MRO_GET_PRIVATE_DATA() to use the cached mro private data where possible.
C
Nicholas Clark: Repurpose struct mro_meta to allow it to store cached linear ISA for arbitary method resolution orders.
C
Steve Hay: Silence a compiler warning introduced by 34963
C
Nicholas Clark: Convention seems to be that static definitions are also made visible by || defined(PERL_DECL_PROT), so add this where it is missing.
C
Nicholas Clark: In Perl_ss_dup(), case SAVEt_FREEPV can be rolled into case SAVEt_DELETE for a space optimisation.
C
Nicholas Clark: Implement Perl_save_delete() using save_pushptri32ptr().
C
Nicholas Clark: Re-order Perl_save_delete() to PTR, INT, PTR.
C
Nicholas Clark: Add S_save_pushptri32ptr() and use it to re-implement Perl_save_hints() and Perl_save_aelem().
C
Nicholas Clark: Move the implmentation of SAVEHINTS() into a new Perl_save_hints() in scope.c. "Inlined" macro functions in scope.h are actually space inefficient.
C
Nicholas Clark: Expose save_pushi32ptr() and implement SAVECOPARYBASE() with it.
C
Nicholas Clark: Expose save_pushptrptr() and implement SAVESWITCHSTACK() with it.
C
Nicholas Clark: Refactor all of the code of the form SSCHECK(3); SSPUSHINT(i); SSPUSHPTR(ptr); SSPUSHINT(type); into a static function S_save_pushi32ptr().
C
Nicholas Clark: Re-implement the macros SAVECOMPPAD(), SAVECOMPILEWARNINGS(), SAVEPARSER() in terms of save_pushptr(). This shinks the exectuable by about 4K. Maybe some of the other scope.h macros should become functions.
C
Nicholas Clark: Refactor all of the code of the form SSCHECK(3); SSPUSHPTR(ptr1); SSPUSHPTR(ptr2); SSPUSHINT(type); into a static function S_save_pushptrptr(). It might be possible to make some of its callers trivial macros, and so eliminate them as funct
C
Nicholas Clark: Convert all the scope save functions of the form SSCHECK(2); SSPUSHPTR(o); SSPUSHINT(SAVEt_FREEOP); into a single function Perl_save_pushptr(ptr, type), which the others call. Implement the others as macros. This reduces the object code si
C
David Mitchell: run regen
C
Nicholas Clark: S_mro_get_linear_isa_*() should have an *un*signed level. [Unless it's a signed concept, use an usigned type.]
C
Nicholas Clark: Note (hopefully) all the use cases of all the rest of the non-public but exported APIs.
C
David Mitchell: run regen
C
Nicholas Clark: Note where (nearly) all the other private non-static functions are used.
C
David Mitchell: todays merging activity
C
David Mitchell: fix some 5.10.x-specific const warnings after the big MUTABLE_* merge
C
David Mitchell: For 5.10.x, disable the const cast checking that MUTABLE_PTR does in blead
C
David Mitchell: provide minimal documentation for the MUTABLE_*() macros
C
Marcus Holland-Moritz: Allow lvalue usage of SvRV() and add MUTABLE_SV() check. Also add new SvRV_const() macro for read-only access.
C
Marcus Holland-Moritz: Revert SvPVX() to allow lvalue usage, but also add a MUTABLE_SV() check. Use SvPVX_const() instead of SvPVX() where only a const SV* is available. Also fix two falsely consted pointers in Perl_sv_2pv_flags().
C
Nicholas Clark: Add MUTABLE_GV(), and eliminate (V *) casts in *.c. Can't easily do gv.h, as GvGP() (at least) needs to split into two macros - one const for reading, one non-const for writing.
C
Nicholas Clark: sizeof(const SV *) is the same as sizeof(SV *), except that it doesn't match my regexp for non-const casts.
C
Nicholas Clark: Eliminate (SV *) casts from the rest of *.c, picking up one (further) erroneous const in dump.c.
C
Nicholas Clark: Eliminate (SV *) casts from sv.c and [tu]*.c, except for the cast in Perl_sv_magicext(), which is documented.
C
Nicholas Clark: Add MUTABLE_IO(), and eliminate (IO *) casts in *.c.
C
Nicholas Clark: Eliminate (AV *) casts in *.c.
C
Nicholas Clark: Add MUTABLE_CV(), and eliminate (CV *) casts in *.c.
C
Nicholas Clark: Every remaining (HV *) cast in *.c
C
Nicholas Clark: ss_dup wrapper const casting analagous to change 34626.
C
Nicholas Clark: Some consting in Perl_ss_dup(), and a few (HV*) casts that can be (const HV *).
C
More...