Dumu has asked for the wisdom of the Perl Monks concerning the following question:
Brethren and Sistren
I am a big fan of the Perl Debugger, perl5dp.pl (aka perl -d) and would like to make the most of its many capabilities. I would really like to be able to utilise the debugger's ability to set a breakpoint at a line in a file other than the one you start off in. E.g.:
As this would mean I could jump to wherever I want in any module I'm using.b lib/UsefulModule.pm:124
The trouble is, whatever line I set, I always get the same message:
Line 124 of 'lib/UsefulModule.pm' not breakable.
Yes, these are lines that should be breakable and indeed are when I step through the code to reach them in another way, with colons on the left and everything. I have never managed to break any line in any module with this functionality as I remember.
Breakpointing in the same module using the 'breakpoint at the start of a sub' functionality works just fine.
I even get auto-complete on the subroutines in the module when I type:b UsefulModule::do_stuff
and/or the first letter / couple of letters of the sub. This is great, but means an extra step if I want to stop in the middle of a sub.b UsefulModule::
For one thing, I wanted to check that this isn't a bug in the debugger. (A classic but inevitable paradox). Has anyone else used this functionality recently, or indeed ever?
I just had a look at the debugger source but I can't see anything obvious that I could be running aground on. (The relevant area seems to be around &break_on_filename_line: breakpoint-related subs are above and below this line.) But then, the debugger code is some of the most legendarily dense Perl there is.
Thanks in advance for your responses.
|
|---|