Stas, here's a minimal example that crashes CCL so hard the compiler doesn't return the failure flag.

(defstruct descriptor thing)
(declaim (ftype (function ((or descriptor symbol) descriptor)) cold-set))
(defun cold-set (blah value)
  ;;                                                                                                                                                                  
  (format t "Cold-set ~S ~S~%" blah value))
(defun make-fixnum-descriptor (num)
  (make-descriptor :thing num))
(defun finish-syms ()
  (cold-set '*current-catch-block* (make-fixnum-descriptor 0)))


? (compile-file "/tmp/try.lisp")
> Error: Unknown type specifier: DESCRIPTOR
> While executing: CCL::%%TYPEP, in process listener(1).
> Type :POP to abort, :R for a list of available restarts.
> Type :? for other options.