Beefy Boxes and Bandwidth Generously Provided by pair Networks
Pathologically Eclectic Rubbish Lister
 
PerlMonks  

Re^2: How can I get the current OP address (akin to PC)?

by rockyb (Beadle)
on Aug 18, 2012 at 23:27 UTC ( #988260=note: print w/ replies, xml ) Need Help??


in reply to Re: How can I get the current OP address (akin to PC)?
in thread How can I get the current OP address (akin to PC)?

Thanks for the suggestion. I tried and it didn't work for me.

Here is something that sort of works but doesn't really.

In file /tmp/Devel/COP.pm:

package DB; sub DB { ($pkg, $filename, $lineno) = caller; $COP = 0; local(*DB::dbline) = "::_<$DB::filename"; if (defined $DB::dbline[$lineno]) { $COP = 0 + $DB::dbline[$lineno] ; } }; 1;
And to test it, put in file /tmp/code-test.pl:
#!/usr/bin/perl use B::Concise; sub testit () { my $walker = B::Concise::compile('-basic', '-src', 'testit'); B::Concise::set_style_standard('debug'); B::Concise::walk_output(\my $buf); $walker->(); # walks and renders into $buf; print $buf, "\n"; printf "COP is 0%x\n", $DB::COP; } testit();
Now run as perl -I/tmp d:COP /tmp/code-test.pl

The problem is that the COP address is always the first statement for the line. And what I really want is the one we are currently at which might not be the first COP of the line. Sigh.


Comment on Re^2: How can I get the current OP address (akin to PC)?
Select or Download Code

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others taking refuge in the Monastery: (7)
As of 2014-08-23 19:03 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    The best computer themed movie is:











    Results (178 votes), past polls