-D info in perlrun
Stephen McCamant [Sat, 9 Aug 1997 07:27:41 +0000 (19:27 +1200)]
This changes the description of -Do to its current meaning, tweaks the
entries for -Dl and -Dr, and makes the description prefer the letters
form to the numeric one.

Note 1: The code in magic_get() sets $^D to `debug & 32767', which
loses the value of -DD. Is this intentional?

Note 2: `Label stack' doesn't seem like an especially good name for
the thing -Dl traces. `Context' matches the name of the variable
`cxstack'. If we wanted to retain the letter, it could be called the
`loop' stack, since perlsyn says `A BLOCK by itself (labeled or not)
is semantically equivalent to a loop that executes once', s///g is
like a loop, and subs and formats, um, aren't that important anyway
:-).

Credited: Ilya Zakharevich <ilya@math.ohio-state.edu>

p5p-msgid: m0wxNNL-000EYgC@alias-2.pr.mcs.net

pod/perlrun.pod

index 19aa0a2..3b5ea60 100644 (file)
@@ -224,27 +224,27 @@ runs the script under the control of a debugging or tracing module
 installed as Devel::foo. E.g., B<-d:DProf> executes the script using the
 Devel::DProf profiler.  See L<perldebug>.
 
-=item B<-D>I<number>
+=item B<-D>I<letters>
 
-=item B<-D>I<list>
+=item B<-D>I<number>
 
 sets debugging flags.  To watch how it executes your script, use
-B<-D14>.  (This works only if debugging is compiled into your
-Perl.)  Another nice value is B<-D1024>, which lists your compiled
-syntax tree.  And B<-D512> displays compiled regular expressions. As an
-alternative specify a list of letters instead of numbers (e.g., B<-D14> is
+B<-Dtls>.  (This works only if debugging is compiled into your
+Perl.)  Another nice value is B<-Dx>, which lists your compiled
+syntax tree.  And B<-Dr> displays compiled regular expressions. As an
+alternative, specify a number instead of list of letters (e.g., B<-D14> is
 equivalent to B<-Dtls>):
 
         1  p  Tokenizing and Parsing
         2  s  Stack Snapshots
-        4  l  Label Stack Processing
+        4  l  Label (Context) Stack Processing
         8  t  Trace Execution
-       16  o  Operator Node Construction
+       16  o  Operator Overloading
        32  c  String/Numeric Conversions
        64  P  Print Preprocessor Command for -P
       128  m  Memory Allocation
       256  f  Format Processing
-      512  r  Regular Expression Parsing
+      512  r  Regular Expression Parsing and Execution
      1024  x  Syntax Tree Dump
      2048  u  Tainting Checks
      4096  L  Memory Leaks (not supported anymore)