[CM] (*s7* 'stack)

bil at ccrma.Stanford.EDU bil at ccrma.Stanford.EDU
Tue Jun 7 10:06:37 PDT 2022


Thanks for the very clear test program!  I'll check it
out.  Two things that might help you debug these sorts
of bugs: there's a macro SHOW_EVAL_OPS in s7.c -- if
it is 1, s7 prints out a ton of detail about what it's
doing; and there's a function s7_show_stack that is
not static, but also not in s7.h -- if you add its
declaration to catch-test.c and call it in your
print_statck_top function, it will show the scheme
stack. The end of the printout for catch-test.c is:

TEST
catch (513), code: #<catch>
eval_done (510), code: #<unused>
TOP 1
stack:
s7_call_with_catch[50584]: push eval_done
s7_call_with_catch[50586]
TEST
TOP 3
stack:
   catch
   eval_done
s7_call_with_catch[50586]
TEST
TOP 4
stack:
   catch
   catch
   eval_done
s7_call_with_catch[50586]
TEST
TOP 5
stack:
   catch
   catch
   catch
   eval_done
stack_reset[7747]: push eval_done
s7_quit[52367]: push eval_done



More information about the Cmdist mailing list