I have some code that was "evolved" rather than designed and is admittedly a bit of a mess and I needed to add an "(exit)" deep in a block where running a sub process has failed. However the (exit) never exits. This is true both if I run compiled or interpreted. I have tried to make a small test case but I can't reproduce the issue. I even replaced the (exit) with a call to a function that prints a message and then does exit and it still doesn't exit. I also tried _exit with the same result. Any suggestions on what to look at or how to debug this?
My attempt to reproduce (which works fine) is below: (define foo 8) (define (runbroke cmd) (handle-exceptions exn (begin (print "FAILED! exn=" exn) #f) (cmd))) (define bar 9) (let ((res (runbroke (lambda ()(process "nadafoobar" "-l" "-blah"))))) (if (not res) (begin (print "Failed to run, exiting with code 7") (exit 7)))) (exit bar) BTW, the code is visible at www.kiatoa.com/fossils/megatest, in cmd-run-proc-each-line in process.scm.
_______________________________________________ Chicken-users mailing list Chicken-users@nongnu.org https://lists.nongnu.org/mailman/listinfo/chicken-users