[slime-devel] Turn off stepping with cmucl?

Raymond Toy toy.raymond at gmail.com
Wed Sep 1 14:31:26 UTC 2010


On 9/1/10 3:25 AM, Helmut Eller wrote:
> * Raymond Toy [2010-09-01 00:52] writes:
> 
>> I finally got around to playing with slime's stepper.  It's not exactly
>> clear how to get this enabled, but what I did was trace some function
>> with :break t.  When the debugger starts, I can then use slime to
>> single-step.  This works pretty well.  However, after I'm done and
>> untrace the function, I still get stepping breakpoints in the function.
>>
>> How are these breakpoints supposed to be removed?
>>
>> Also, from the code, it seems that slime inserts stepping breakpoints at
>> all possible locations in a function.  Can't it just single-step the way
>> cmucl's native debugger steps by inserting the breakpoint, running, and
>> then removing the breakpoint?
> 
> As far as I can rememeber, the idea is to insert breakpoints at all
> those places that are reachable from the current PC in the current
> function (and where it's save to set a breakpoint).  When a breakpoint
> is hit, all the breakpoints from that "barrier" are removed before
> giving control to the UI.  The next step command will again compute the
> reachable code points and insert breakpoints before starting executing.
> 
> There may well be bugs there.  I think if another function is called
> before hitting a breakpoint and the callee makes some non-local return
> (typically from debugger) the breakpoints in the caller are not cleared.

Ok.  Let me take a look at this again.  I may have selected the slime
abort restart.  (But that could go and remove all the breakpoints, I
suppose.)

Ray





More information about the slime-devel mailing list