On Fri, May 28, 2004 at 11:07:28PM -0000, Norbert wrote: > I can't run the Devel::DProf profiler on any script that uses > threads/shared.pm, because that lib loads itself using > XSLoader::load(). This function is written such that it bumps > up against a DProf bug, whereby it chokes on subroutines that > end with a last, goto, or next. (snip) > I suppose that if this problem is going to be fixed in DProf > then this is just a duplicate bug, but I would suggest that > this issue increases the severity, since the major question > marks about ithreads seems to revolve around memory usage, > which DProf is useful for checking. Thanks for the report. yes, this does seem to be the same problem. P5Pers: the root problem seems to be that whenever pp_entersub is invoked, it calls DB::sub rather than the the real sub, and it is left to DB::sub to then invoke the real sub, which can be tricky when that real sub may do various stuff that will unwind the CX stack (like goto &foo, last, die). I'd have thought a better way would be to provide an additional C-level hook that gets called by entersub before it (ie entersub) then proceeds to call the real sub as usual. I havn't looked into this closely, though. I'm hoping someone with some more experience in this area might comment. Dave. -- The Enterprise is involved in a bizarre time-warp experience which is in some way unconnected with the Late 20th Century. -- Things That Never Happen in "Star Trek" #14Thread Previous | Thread Next