diff options
author | Steve Hay <steve.m.hay@googlemail.com> | 2012-08-17 18:41:02 +0100 |
---|---|---|
committer | Steve Hay <steve.m.hay@googlemail.com> | 2012-08-17 19:09:51 +0100 |
commit | 9d2d23d98141e59338d57996fe0c74d36351f6e9 (patch) | |
tree | 371ed4a691211c62da50b7163142f9e0fba3b665 | |
parent | dc4b20bdf34f180d3017bda09b1fd225ad2b19d4 (diff) | |
download | perl-9d2d23d98141e59338d57996fe0c74d36351f6e9.tar.gz |
Upgrade to B::Debug 1.18
-rwxr-xr-x | Porting/Maintainers.pl | 2 | ||||
-rw-r--r-- | cpan/B-Debug/Debug.pm | 19 | ||||
-rw-r--r-- | pod/perldelta.pod | 5 |
3 files changed, 23 insertions, 3 deletions
diff --git a/Porting/Maintainers.pl b/Porting/Maintainers.pl index 4fd3e4a696..180f560e1a 100755 --- a/Porting/Maintainers.pl +++ b/Porting/Maintainers.pl @@ -287,7 +287,7 @@ use File::Glob qw(:case); 'B::Debug' => { 'MAINTAINER' => 'rurban', - 'DISTRIBUTION' => 'RURBAN/B-Debug-1.17.tar.gz', + 'DISTRIBUTION' => 'RURBAN/B-Debug-1.18.tar.gz', 'FILES' => q[cpan/B-Debug], 'EXCLUDED' => ['t/pod.t'], 'UPSTREAM' => 'cpan', diff --git a/cpan/B-Debug/Debug.pm b/cpan/B-Debug/Debug.pm index fb8db3ff20..31b0e2834b 100644 --- a/cpan/B-Debug/Debug.pm +++ b/cpan/B-Debug/Debug.pm @@ -1,6 +1,6 @@ package B::Debug; -our $VERSION = '1.17'; +our $VERSION = '1.18'; use strict; require 5.006; @@ -285,11 +285,16 @@ EOT sub B::AV::debug { my ($av) = @_; $av->B::SV::debug; + _array_debug($av); +} + +sub _array_debug { + my ($av) = @_; # tied arrays may leave out FETCHSIZE my (@array) = eval { $av->ARRAY; }; print "\tARRAY\t\t(", join(", ", map("0x" . $$_, @array)), ")\n"; my $fill = eval { scalar(@array) }; - if ($Config{'useithreads'}) { + if ($Config{'useithreads'} && class($av) ne 'PADLIST') { printf <<'EOT', $fill, $av->MAX, $av->OFF; FILL %d MAX %d @@ -353,6 +358,15 @@ sub B::SPECIAL::debug { print exists $specialsv_name[$i] ? $specialsv_name[$i] : "", "\n"; } +sub B::PADLIST::debug { + my ($padlist) = @_; + printf <<'EOT', class($padlist), $$padlist, $padlist->REFCNT; +%s (0x%x) + REFCNT %d +EOT + _array_debug($padlist); +} + sub compile { my $order = shift; B::clearsym(); @@ -417,3 +431,4 @@ Copyright (c) 2008, 2010 Reini Urban Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. =cut + diff --git a/pod/perldelta.pod b/pod/perldelta.pod index f0ae626204..7624cacf76 100644 --- a/pod/perldelta.pod +++ b/pod/perldelta.pod @@ -131,6 +131,11 @@ a sub and a format share the same name, it will dump both. =item * +L<B::Debug> has been upgraded from version 1.17 to 1.18. This adds support +(experimentally) for the new C<B::PADLIST>. + +=item * + L<B::Deparse> has been upgraded from version 1.15 to 1.16. It now deparses loop controls with the correct precedence, and multiple statements in a C<format> line are also now deparsed correctly. |