*error-hook* is only called if there is no catch; it resets the s7 stack when it returns, so you're back at the top level. My first thought is that you need a catch in convert.scm where you do the s7_call. Maybe I have the wrong model of what's happening.
The s7 stack can be viewed via (*s7* 'stack); it is independent of the C stack (I assume that's what you're seeing with backtrace). I don't think the GC is the culprit. s7_show_stack can give an abbreviated view of the s7 stack from C (you'll need a declaration -- it's not in s7.h, but it is accessible globally -- I thought of it as a debugging aid -- (*s7* 'stack) is sometimes very verbose). _______________________________________________ Cmdist mailing list [email protected] https://cm-mail.stanford.edu/mailman/listinfo/cmdist
