X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=pod%2Fperldebug.pod;h=252990139fd56183fcf8a9fc2990453d2dd03b19;hb=953f6acfa20ec275ec39a552dfac8124bd93ebdf;hp=2e21941db0b48469bc30a2d4e42fd288bee09a9e;hpb=d74e8afc9309529cf5c6c4390fc311850865d506;p=p5sagit%2Fp5-mst-13.2.git diff --git a/pod/perldebug.pod b/pod/perldebug.pod index 2e21941..2529901 100644 --- a/pod/perldebug.pod +++ b/pod/perldebug.pod @@ -54,9 +54,33 @@ function with something that doesn't look like a debugger command, such as a leading C<;> or perhaps a C<+>, or by wrapping it with parentheses or braces. +=head2 Calling the debugger + +There are several ways to call the debugger: + +=over 4 + +=item perl -d program_name + +On the given program identified by C. + +=item perl -d -e 0 + +Interactively supply an arbitrary C using C<-e>. + +=item perl -d:Ptkdb program_name + +Debug a given program via the C GUI. + +=item perl -dt threaded_program_name + +Debug a given program using threads (experimental). + +=back + =head2 Debugger Commands -The debugger understands the following commands: +The interactive debugger understands the following commands: =over 12 @@ -430,7 +454,7 @@ X<< debugger command, > >> Set an action (Perl command) to happen after the prompt when you've just given a command to return to executing the script. A multi-line command may be entered by backslashing the newlines (we bet you -couldn't've guessed this by now). +couldn't have guessed this by now). =item > * X<< debugger command, > >> @@ -638,7 +662,7 @@ of warning (this is often annoying) or exception (this is often valuable). Unfortunately, the debugger cannot discern fatal exceptions from non-fatal ones. If C is even 1, then your non-fatal exceptions are also traced and unceremoniously altered if they -came from C strings or from any kind of C within modules +came from C strings or from any kind of C within modules you're attempting to load. If C is 2, the debugger doesn't care where they came from: It usurps your exception handler and prints out a trace, then modifies all exceptions with its own embellishments. @@ -956,12 +980,12 @@ for incredibly long examples of these. =head2 Debugging compile-time statements If you have compile-time executable statements (such as code within -BEGIN and CHECK blocks or C statements), these will I be -stopped by debugger, although Cs and INIT blocks will, and -compile-time statements can be traced with C option set -in C). From your own Perl code, however, you can -transfer control back to the debugger using the following statement, -which is harmless if the debugger is not running: +BEGIN, UNITCHECK and CHECK blocks or C statements), these will +I be stopped by debugger, although Cs and INIT blocks +will, and compile-time statements can be traced with C +option set in C). From your own Perl code, however, you +can transfer control back to the debugger using the following +statement, which is harmless if the debugger is not running: $DB::single = 1;