diff --git a/tools/setup.lisp b/tools/setup.lisp index 99d65562635ee72fcb58bc85e77bdfad5d7e94a3..20abb6904e167234c1636af4817b0e043a373d58 100644 --- a/tools/setup.lisp +++ b/tools/setup.lisp @@ -187,20 +187,21 @@ (t (handler-bind ((error #'(lambda (condition) - (format *error-output* "~2&~A~2&" - condition) - (when proceed - (format *error-output* "Proceeding...~%") - (continue)) - (format *error-output* "Aborting...~%") - (handler-case - (let ((*debug-io* *error-output*)) - (debug:backtrace)) - (error (condition) - (declare (ignore condition)) - (format t "Error in backtrace!~%"))) - (format t "Error abort.~%") - (return-from comf)))) + (unless (typep condition 'c::compiler-error) + (format *error-output* "~2&~A~2&" + condition) + (when proceed + (format *error-output* "Proceeding...~%") + (continue)) + (format *error-output* "Aborting...~%") + (handler-case + (let ((*debug-io* *error-output*)) + (debug:backtrace)) + (error (condition) + (declare (ignore condition)) + (format t "Error in backtrace!~%"))) + (format t "Error abort.~%") + (return-from comf))))) (if assem (c::assemble-file src :output-file obj) (compile-file src :error-file nil :output-file obj))