2008/9/4 Joel J. Adamson <
Using the instructions above, this should be fixed.
In order to track down the source of your bugs, it may be important for you to note that
- Throwing exceptions with no handler/catcher may sigsegv your app.
- You should presuppose that ___argXX variables inside Scheme-to-C calls are trashed after C-to-Scheme calls. I.e.: If you have declared a c-define or c-lambda that takes parameters, these will appear as ___arg0, ___arg1 etc. in the C code of the c-define / c-lambda. These will have correct contents all until you invoke Scheme functions from the C code. not afterwards. So back them up to the stack if you do.
- Ensure you didn't call the version of any Gambit-internal function with broken parameters. The names of them start with ##. Very simple example:
>(cadr 4)
*** ERROR IN (console)@3.1 -- (Argument 1) PAIR expected
(cadr 4)
1>
>(##cadr 4)
/usr/local/bin/gsc: line 5: 17999 Segmentation fault
If your problems persist, ask the list further.