Beefy Boxes and Bandwidth Generously Provided by pair Networks
Welcome to the Monastery
 
PerlMonks  

Re^2: Using the perl debugger

by ww (Archbishop)
on Mar 15, 2009 at 12:49 UTC ( [id://750728]=note: print w/replies, xml ) Need Help??


in reply to Re: Using the perl debugger
in thread Using the perl debugger

Ooops! The behavior appears to vary depending on how lines are executed, leading me to believe almut may be correct and that codeacrobat's observation may apply to 5.8.8 (and probably others). A caveat (or "confusion") follows. Compare using r instead of stepping:

>perl -d \pl_test\test{{.pl Loading DB routines from perl5db.pl version 1.28 Editor support available. Enter h or `h h' for help, or `perldoc perldebug' for more help. main::(\pl_test\test{{.pl:5): 5: my @i = (2..5); DB<1> {{ # DB<2> r foo 3 foo 4 foo 5 foo 6 Debugged program terminated. Use q to quit or R to restart, use o inhibit_exit to avoid stopping after program termination, h q, h R or h o to get additional info. auto(-1) DB<2> # DB<2> ...

BUT, stepping (entirely) through the script:

BUT: >perl -d pl_test\test{{.pl Loading DB routines from perl5db.pl version 1.28 Editor support available. Enter h or `h h' for help, or `perldoc perldebug' for more help. main::(pl_test\test{{.pl:5): 5: my @i = (2..5); DB<1> {{ # DB<2> s main::(pl_test\test{{.pl:7): 7: for my $i (@i) { auto(-1) DB<2> # DB<2> main::(pl_test\test{{.pl:8): 8: $i ++; auto(-1) DB<2> # DB<2> main::(pl_test\test{{.pl:9): 9: print "foo"; auto(-1) DB<2> # DB<2> foomain::(pl_test\test{{.pl:10): 10: print " $i\n"; auto(-1) DB<2> # DB<2> 3 main::(pl_test\test{{.pl:8): 8: $i ++; auto(-1) DB<2> # DB<2> main::(pl_test\test{{.pl:9): 9: print "foo"; auto(-1) DB<2> # DB<2> foomain::(pl_test\test{{.pl:10): 10: print " $i\n"; auto(-1) DB<2> # DB<2> 4 main::(pl_test\test{{.pl:8): 8: $i ++; auto(-1) DB<2> # DB<2> main::(pl_test\test{{.pl:9): 9: print "foo"; auto(-1) DB<2> # DB<2> foomain::(pl_test\test{{.pl:10): 10: print " $i\n"; auto(-1) DB<2> # DB<2> 5 main::(pl_test\test{{.pl:8): 8: $i ++; auto(-1) DB<2> # DB<2> main::(pl_test\test{{.pl:9): 9: print "foo"; auto(-1) DB<2> # DB<2> foomain::(pl_test\test{{.pl:10): 10: print " $i\n"; auto(-1) DB<2> # DB<2> 6 Debugged program terminated. Use q to quit or R to restart, use o inhibit_exit to avoid stopping after program termination, h q, h R or h o to get additional info. auto(-1) DB<2> # DB<2> Use `q' to quit or `R' to restart. `h q' for details. DB<2> s Use `q' to quit or `R' to restart. `h q' for details. ...

WTF?

Replies are listed 'Best First'.
Re^3: Using the perl debugger
by almut (Canon) on Mar 15, 2009 at 13:02 UTC
    BUT, stepping (entirely) through the script...

    ?? — I don't really see a difference in output. For example, the line print " $i\n" is still printing 3..6.  And the "foo" is there as well: foomain::(...

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://750728]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others having an uproarious good time at the Monastery: (1)
As of 2025-02-09 15:37 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    Which URL do you most often use to access this site?












    Results (96 votes). Check out past polls.