On Tue, Feb 4, 2014 at 5:50 PM, Nikodemus Siivola <nikodemus@random-state.net> wrote:
You're seeing objects visible on the thread stack at that point.

Okay. 
 
...but really, if sticking (sb-ext:gc :full t) between DOIT calls fixes things, then digging deeper isn't going to provide an easy / prettier solution.

I'm sorry, I forgot to say that I'm already doing a (gc :full t) between DOITs and still getting the crash.
 
This makes me suspect different compilation policies. If you just want to get on with your life, that's understandable, but first rule in chasing things like this is to make sure you're  comparing oranges from the same tree...

Fair enough.  What's the best way to force a consistent compilation policy?  Is putting

(declaim (optimize (safety 3) (debug 3)))

in my top level loading file (or at the REPL) sufficient?  Or do I need to use with-compilation-unit?

-- Scott