X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=ext%2FB%2FB%2FC.pm;h=3011eb0934c0d4ad015a087606d6a0b97a8c9617;hb=4522225b0b1dd6f5498ad893469cb9b2e20183b7;hp=1d195a0b2a13081590d4fe405ed35f6aa9a7bef9;hpb=3db8f154c4c6e098a5a0bdf7932e8f86fbd2c451;p=p5sagit%2Fp5-mst-13.2.git diff --git a/ext/B/B/C.pm b/ext/B/B/C.pm index 1d195a0..3011eb0 100644 --- a/ext/B/B/C.pm +++ b/ext/B/B/C.pm @@ -7,7 +7,7 @@ # package B::C::Section; -our $VERSION = '1.01'; +our $VERSION = '1.02'; use B (); use base B::Section; @@ -1012,10 +1012,11 @@ sub B::CV::save { $cvstashname, $cvname); # debug } $pv = '' unless defined $pv; # Avoid use of undef warnings - $symsect->add(sprintf("xpvcvix%d\t%s, %u, 0, %d, %s, 0, Nullhv, Nullhv, %s, s\\_%x, $xsub, $xsubany, Nullgv, \"\", %d, s\\_%x, (CV*)s\\_%x, 0x%x", + $symsect->add(sprintf("xpvcvix%d\t%s, %u, 0, %d, %s, 0, Nullhv, Nullhv, %s, s\\_%x, $xsub, $xsubany, Nullgv, \"\", %d, s\\_%x, (CV*)s\\_%x, 0x%x, 0x%x", $xpvcv_ix, cstring($pv), length($pv), $cv->IVX, $cv->NVX, $startfield, ${$cv->ROOT}, $cv->DEPTH, - $$padlist, ${$cv->OUTSIDE}, $cv->CvFLAGS)); + $$padlist, ${$cv->OUTSIDE}, $cv->CvFLAGS, + $cv->OUTSIDE_SEQ)); if (${$cv->OUTSIDE} == ${main_cv()}){ $init->add(sprintf("CvOUTSIDE(s\\_%x)=PL_main_cv;",$$cv)); @@ -1436,6 +1437,9 @@ typedef struct { AV * xcv_padlist; CV * xcv_outside; cv_flags_t xcv_flags; + U32 xcv_outside_seq; /* the COP sequence (at the point of our + * compilation) in the lexically enclosing + * sub */ } XPVCV_or_similar; #define ANYINIT(i) i #else @@ -1615,6 +1619,15 @@ EOT } EOT } + else { + print <