[slime-cvs] CVS slime
mbaringer
mbaringer at common-lisp.net
Wed Sep 27 22:52:26 UTC 2006
Update of /project/slime/cvsroot/slime
In directory clnet:/tmp/cvs-serv4425
Modified Files:
swank-loader.lisp
Log Message:
(compile-files-if-needed-serially): Don't ignore compile-time errors
but drop into a debugger (it's not a slime debugger but it's certainly
better than ignoring the error).
--- /project/slime/cvsroot/slime/swank-loader.lisp 2006/04/13 10:41:59 1.59
+++ /project/slime/cvsroot/slime/swank-loader.lisp 2006/09/27 22:52:26 1.60
@@ -142,22 +142,26 @@
(dolist (source-pathname files)
(let ((binary-pathname (binary-pathname source-pathname
fasl-directory)))
- (handler-case
- (progn
- (when (or needs-recompile
- (not (probe-file binary-pathname))
- (file-newer-p source-pathname binary-pathname))
- (ensure-directories-exist binary-pathname)
- (compile-file source-pathname :output-file binary-pathname
- :print nil :verbose t)
- (setq needs-recompile t))
- (load binary-pathname :verbose t))
- #+(or)
- (error ()
- ;; If an error occurs compiling, load the source instead
- ;; so we can try to debug it.
- (load source-pathname))
- ))))))
+ (when (or needs-recompile
+ (not (probe-file binary-pathname))
+ (file-newer-p source-pathname binary-pathname))
+ ;; need a to recompile source-pathname, so we'll
+ ;; nede to recompile everything after this too.
+ (setq needs-recompile t)
+ (ensure-directories-exist binary-pathname)
+ (multiple-value-bind (output-file warningsp failurep)
+ (compile-file source-pathname :output-file binary-pathname
+ :print nil
+ :verbose t)
+ (declare (ignore output-file warningsp))
+ (when failurep
+ ;; If an error occurs compiling, load the source
+ ;; instead so we can try to debug it (this next
+ ;; call should, unless things are really broken,
+ ;; signal an error).
+ (format *error-output* ";; ERROR wihle compiling ~S." source-pathname)
+ (load source-pathname))))
+ (load binary-pathname :verbose t))))))
#+(or cormanlisp ecl)
(defun compile-files-if-needed-serially (files fasl-directory)
More information about the slime-cvs
mailing list