Randal L. Schwartz: > Simon> There isn't a "current state". > > Saying there isn't one doesn't make that true.
I understand that. But knowing far, far more about how the B modules are implemented than you do gives me a reasonable head start. > At the time > I can possibly execute coderef2text, there *is* a current state. > Deny that. OK, I'll deny that; B modules are typically executed during the CHECK phase, when none of the code has been executed. At that time there is no current state. OK? > Clear now? It was clear before. > coderef2text does not dump closures. I wish it would. It appears to > be a hard problem. No, it's an absolutely trivial problem. B::Deparse::coderef2text appears not to currently check the SVs defined in CvOUTSIDE as well as the current CV. If it checked those SVs, you'd get what you wanted. It's probably only a three or four line fix. Patches are very welcome. I can even supply you with a free Perl 5 internals tutorial in case you're not up to speed on the issues involved. -- We all agree on the necessity of compromise. We just can't agree on when it's necessary to compromise. -- Larry Wall