Dear Marc,
(with-exception-handler (lambda (e) (print "Outer.\n") 'outer-handler-result) (lambda () (with-exception-handler (lambda (e) (print "Inner.\n") (let ((r (raise e))) (print "Passing on " r ".\n") r)) (lambda () (list 'raise-returned: (raise 'err))))))
prints out "Inner.\n" in an infinite loop currently. Is it not supposed to output
Inner. Outer. Passing on outer-handled-result.
and then return '(raise-returned: outer-handler-result) ?
(Found something that may be very related and filed it as https://www.iro.umontreal.ca/~gambit/bugzilla/show_bug.cgi?id=175 .)
Thanks and best regards, Mikael