* sblist@me.com [2009-01-08 07:25+0100] writes:
Can anyone offer any advice on how to proceed?
If those things work in SBCL but not in CCL then it probably means that CCL implements some thread related features differently.
Global IO redirection only works if *standard-output* etc. are truly global variables. If those variables are thread-local we can't set them with a simple setf and would have to use something else, e.g. with a backend specific function setf-global. I don't know how these things work in CCL; you could ask the CCL developers how to do it properly.
For the debugger, we set *debugger-hook* (again if that isn't a global variable it has no effect on other threads). We also have a backend spefic function install-debugger-globally which could use implementation specific tricks, but for CCL it doesn't.
It looks like BREAK invokes the Slime debugger only inside call-with-debugger-hook. See also *break-in-sldb* in swank-openmcl.lisp. Maybe it works better if you set that to T.
In general, you can invoke the Slime debugger by calling swank:invoke-slime-debugger. This might be more robust than relying on *debugger-hook* etc.
Helmut.