In perl.git, the branch sprout/padlist has been created
<http://perl5.git.perl.org/perl.git/commitdiff/bea58b9494deecd147eb8ba23f853b74e93ff8ab?hp=0000000000000000000000000000000000000000>
at bea58b9494deecd147eb8ba23f853b74e93ff8ab (commit)
- Log -----------------------------------------------------------------
commit bea58b9494deecd147eb8ba23f853b74e93ff8ab
Author: Father Chrysostomos <[email protected]>
Date: Thu Aug 16 16:47:38 2012 -0700
Increase $B::Xref::VERSION from 1.03 to 1.04
M ext/B/B/Xref.pm
commit 40e23aeb0612f7ebea5c00bcb633b53bf9bad5e7
Author: Father Chrysostomos <[email protected]>
Date: Thu Aug 16 16:46:20 2012 -0700
Stop padlists from being AVs
In order to fix a bug, I need to add new fields to padlists. But I
cannot easily do that as long as they are AVs.
So I have created a new padlist struct.
This not only allows me to extend the padlist struct with new members
as necessary, but also saves memory, as we now have a three-pointer
struct where before we had a whole SV head (3-4 pointers) + XPVAV (5
pointers).
This will unfortunately break half of CPAN, but the pad API docs
clearly say this:
NOTE: this function is experimental and may change or be
removed without notice.
It already breaks B::Debug, which I have fixed as part of this com-
mit; but I will wait for integration from upstream before merging this
into blead.
M av.c
M cpan/B-Debug/Debug.pm
M dump.c
M embed.fnc
M embed.h
M ext/B/B.xs
M ext/B/B/Xref.pm
M ext/B/typemap
M ext/XS-APItest/APItest.xs
M pad.c
M pad.h
M perl.h
M proto.h
M sv.c
commit 652a04a0189c47303985720118570363d5adff00
Author: Father Chrysostomos <[email protected]>
Date: Wed Aug 15 22:27:54 2012 -0700
Use PADLIST in more places
Much code relies on the fact that PADLIST is typedeffed as AV.
PADLIST should be treated as a distinct type. (This also means casts
ing PADLISTs to AV when passing them to av_fetch.)
M cop.h
M dump.c
M ext/XS-APItest/APItest.xs
M op.c
M pad.c
M pp_ctl.c
M pp_hot.c
M pp_sort.c
M sv.c
M sv.h
commit 2a5ae4c6c9537e61703d2da3e197870bdf55ca8a
Author: Father Chrysostomos <[email protected]>
Date: Wed Aug 15 22:11:46 2012 -0700
Move PAD(LIST) typedefs to perl.h
otherwise they can only be used in some header files.
M pad.h
M perl.h
-----------------------------------------------------------------------
--
Perl5 Master Repository