|
[Sbcl-commits] sbcl/tests compiler.test.sh, 1.31,
1.32 package-locks.impure.lisp, 1.14, 1.15
From: Nikodemus Siivola <demoss@us...> - 2011-04-10 10:34
|
Update of /cvsroot/sbcl/sbcl/tests
In directory vz-cvs-3.sog:/tmp/cvs-serv25944/tests
Modified Files:
compiler.test.sh package-locks.impure.lisp
Log Message:
1.0.47.20: don't handle errors during compile-time-too processing
Essentially reverts 1.0.33.13.
Handling compile-time-too errors has a nasty tendency to swallow
things package conflict errors from DEFPACKAGE forms, and dump them
into fasls without allowing the user to handle them reasonably.
While it may be that there are specific cases which should/could be
handled and converted into compiler-errors, I believe they are the
the minority. For a moment I considered simply not handling
conditions which have restarts associated with them, but it seems to
me that
(eval-when (:compile-toplevel) (error "oops"))
is most often a signal that something is seriously wrong, and
compiling rest of the file is a waste of time and only obfuscates
the real problem.
Index: package-locks.impure.lisp
===================================================================
RCS file: /cvsroot/sbcl/sbcl/tests/package-locks.impure.lisp,v
retrieving revision 1.14
retrieving revision 1.15
diff -u -d -r1.14 -r1.15
--- package-locks.impure.lisp 14 Oct 2010 19:43:24 -0000 1.14
+++ package-locks.impure.lisp 10 Apr 2011 10:34:39 -0000 1.15
@@ -519,20 +519,20 @@
:original))
:load t)
-(ctu:file-compile
- `((in-package :macro-killing-macro-2)
- (defmacro to-die-for ()
- :replacement)))
-
(with-test (:name :defmacro-killing-macro)
+ (ignore-errors
+ (ctu:file-compile
+ `((in-package :macro-killing-macro-2)
+ (defmacro to-die-for ()
+ :replacement))))
(assert (eq :original (macroexpand '(macro-killing-macro-1:to-die-for)))))
-(ctu:file-compile
- `((in-package :macro-killing-macro-2)
- (eval-when (:compile-toplevel)
- (setf (macro-function 'to-die-for) (constantly :replacement2)))))
-
(with-test (:name :setf-macro-function-killing-macro)
+ (ignore-errors
+ (ctu:file-compile
+ `((in-package :macro-killing-macro-2)
+ (eval-when (:compile-toplevel)
+ (setf (macro-function 'to-die-for) (constantly :replacement2))))))
(assert (eq :original (macroexpand '(macro-killing-macro-1:to-die-for)))))
;;; WOOT! Done.
Index: compiler.test.sh
===================================================================
RCS file: /cvsroot/sbcl/sbcl/tests/compiler.test.sh,v
retrieving revision 1.31
retrieving revision 1.32
diff -u -d -r1.31 -r1.32
--- compiler.test.sh 14 Oct 2010 16:32:52 -0000 1.31
+++ compiler.test.sh 10 Apr 2011 10:34:39 -0000 1.32
@@ -460,7 +460,7 @@
(eval-when (:compile-toplevel)
(error "ERROR within EVAL-WHEN."))
EOF
-expect_condition_during_compile sb-c:compiler-error $tmpfilename
+expect_condition_during_compile simple-error $tmpfilename
cat > $tmpfilename <<EOF
(defun slot-name-incf (s)
|
| Thread | Author | Date |
|---|---|---|
| [Sbcl-commits] sbcl/tests compiler.test.sh, 1.31, 1.32 package-locks.impure.lisp, 1.14, 1.15 | Nikodemus Siivola <demoss@us...> |