Hello,
OpenMCL 0.14.2 is now out and SLDB does not work with it. The following is an excerpt from my conversation with Gary Byers discussing MAP-BACKTRACE:
Gary Byers gb@clozure.com writes: ...
Yes; this is now wrong. Low-level stack-walking functions that used to take a TCR ("thread context record") as an argument now either default to walking the current thread's stacks or take another thread's "backtrace context". Since this is trying to do a backtrace on the current thread, it never needed to pass the current TCR around.
(The whole issue is that you can't just arbitrarily look at another thread's stack in general, since it's likely to be moving around as you're looking at it. Even if you could, the information in the TCR is only accurate at certain points in the thread's execution. You can look at certain parts of another thread's stack if you're sure that that thread is in a break loop while you're looking.)
It looks like the function that this function maps takes a TCR as an argument; if that function passes that TCR to other low-level stack-walking code, it'll run into the same problem. Passing NIL explictly may work.
Setting the 'tcr' variable to NIL instead of CCL::%CURRENT-TCR in MAP-BACKTRACE does allow the debugger to present the first backtrace, but it seems broken upon using some of the restarts.
Unfortunately this is all voodoo to me, but hopefully it is helpful to someone =)
Regards, Will