Re: [cpan #17773] Bug in Term::ReadKey being trigger by a bug in Term::ReadLine
[p5sagit/p5-mst-13.2.git] / ext / Devel / DProf / DProf.pm
index e9372ff..49ba6bc 100644 (file)
@@ -1,4 +1,4 @@
-require 5.003;
+use 5.006_001;
 
 =head1 NAME
 
@@ -6,7 +6,7 @@ Devel::DProf - a Perl code profiler
 
 =head1 SYNOPSIS
 
-       perl5 -d:DProf test.pl
+       perl -d:DProf test.pl
 
 =head1 DESCRIPTION
 
@@ -21,7 +21,7 @@ To profile a Perl script run the perl interpreter with the B<-d> debugging
 switch.  The profiler uses the debugging hooks.  So to profile script
 F<test.pl> the following command should be used:
 
-       perl5 -d:DProf test.pl
+       perl -d:DProf test.pl
 
 When the script terminates (or when the output buffer is filled) the
 profiler will dump the profile information to a file called
@@ -154,6 +154,24 @@ from this subroutine.  Note that the first assignment above does not
 change the numeric slot (it will I<mark> it as invalid, but will not
 write over it).
 
+Another problem is that if a subroutine exits using goto(LABEL),
+last(LABEL) or next(LABEL) then perl may crash or Devel::DProf will die
+with the error:
+
+   panic: Devel::DProf inconsistent subroutine return
+
+For example, this code will break under Devel::DProf:
+
+   sub foo {
+     last FOO;
+   }
+   FOO: {
+     foo();
+   }
+
+A pattern like this is used by Test::More's skip() function, for
+example.  See L<perldiag> for more details.
+
 Mail bug reports and feature requests to the perl5-porters mailing list at
 F<E<lt>perl5-porters@perl.orgE<gt>>.
 
@@ -187,8 +205,8 @@ sub DB {
 
 use XSLoader ();
 
-$Devel::DProf::VERSION = '19990108'; # this version not authorized by
-                                    # Dean Roehrich. See "Changes" file.
+$Devel::DProf::VERSION = '20050603.00';  # this version not authorized by
+                                        # Dean Roehrich. See "Changes" file.
 
 XSLoader::load 'Devel::DProf', $Devel::DProf::VERSION;