This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
lib/locale.t: Add omitted test cases
[perl5.git] / lib / DB.pm
index 342f5d8..fd0ff92 100644 (file)
--- a/lib/DB.pm
+++ b/lib/DB.pm
@@ -38,17 +38,17 @@ BEGIN {
 
   $DB::package = '';    # current package space
   $DB::filename = '';   # current filename
-  $DB::subname = '';    # currently executing sub (fullly qualified name)
+  $DB::subname = '';    # currently executing sub (fully qualified name)
   $DB::lineno = '';     # current line number
 
-  $DB::VERSION = $DB::VERSION = '1.0';
+  $DB::VERSION = $DB::VERSION = '1.07';
 
   # initialize private globals to avoid warnings
 
   $running = 1;         # are we running, or are we stopped?
   @stack = (0);
   @clients = ();
-  $deep = 100;
+  $deep = 1000;
   $ready = 0;
   @saved = ();
   @skippkg = ();
@@ -63,8 +63,7 @@ sub sub {
   push(@stack, $DB::single);
   $DB::single &= 1;
   $DB::single |= 4 if $#stack == $deep;
-#  print $DB::sub, "\n";
-  if ($DB::sub =~ /(?:^|::)DESTROY$/ or not defined wantarray) {
+  if ($DB::sub eq 'DESTROY' or substr($DB::sub, -9) eq '::DESTROY' or not defined wantarray) {
     &$DB::sub;
     $DB::single |= pop(@stack);
     $DB::ret = undef;
@@ -94,15 +93,6 @@ sub DB {
   $usrctxt = "package $DB::package;";          # this won't let them modify, alas
   local(*DB::dbline) = "::_<$DB::filename";
 
-  # we need to check for pseudofiles on Mac OS (these are files
-  # not attached to a filename, but instead stored in Dev:Pseudo)
-  # since this is done late, $DB::filename will be "wrong" after
-  # skippkg
-  if ($^O eq 'MacOS' && $#DB::dbline < 0) {
-    $DB::filename = 'Dev:Pseudo';
-    *DB::dbline = "::_<$DB::filename";
-  }
-
   my ($stop, $action);
   if (($stop,$action) = split(/\0/,$DB::dbline{$DB::lineno})) {
     if ($stop eq '1') {
@@ -268,7 +258,7 @@ sub backtrace {
     } elsif ($s eq '(eval)') {
       $s = "eval {...}";
     }
-    $f = "file `$f'" unless $f eq '-e';
+    $f = "file '$f'" unless $f eq '-e';
     push @ret, "$w&$s$a from $f line $l";
     last if $DB::signal;
   }
@@ -556,8 +546,7 @@ __END__
 
 =head1 NAME
 
-DB - programmatic interface to the Perl debugging API (draft, subject to
-change)
+DB - programmatic interface to the Perl debugging API
 
 =head1 SYNOPSIS
 
@@ -570,7 +559,8 @@ change)
     CLIENT->register()      # register a client package name
     CLIENT->done()          # de-register from the debugging API
     CLIENT->skippkg('hide::hide')  # ask DB not to stop in this package
-    CLIENT->cont([WHERE])       # run some more (until BREAK or another breakpt)
+    CLIENT->cont([WHERE])       # run some more (until BREAK or 
+                                # another breakpointt)
     CLIENT->step()              # single step
     CLIENT->next()              # step over
     CLIENT->ret()               # return from current subroutine
@@ -599,7 +589,8 @@ change)
     CLIENT->stop(FILE,LINE) # when execution stops
     CLIENT->idle()          # while stopped (can be a client event loop)
     CLIENT->cleanup()       # just before exit
-    CLIENT->output(LIST)    # called to print any output that API must show
+    CLIENT->output(LIST)    # called to print any output that
+                            # the API must show
 
 =head1 DESCRIPTION