I can only help with one of the cases: If you to qualify b compile db_demo_postpone::testsub3, then this particular case seems to work (because that's the name under which it is compiled). Importing it into the main namespace doesn't compile. I also would sort of expect that *testsub2 = sub {...} doesn't work, because it is compiled as an anonymous sub, and only then pushed into the symbol table. For the rest of the cases I have no clue.
My own experience with b postpone was never very successful. For a start, there's no feedback when you mistype the subroutine or package name (and I mistype often). And then, I never found out in which cases it would actually work (or whether it has just stopped working in recent Perls).
That's why I ended up with my brute-force method: Whenever b Foo::bar tells me that the method isn't found, I just call it and then, if the call seems to actually call something, try again. With the debugger's command history, that's even less typing than postpone.
In reply to Re^3: using perldb (neither 'b compile' nor 'b postpone' seem to work)
by haj
in thread using perldb
by geoffleach
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |