Commit 9575fb8d authored by Francois-Rene Rideau's avatar Francois-Rene Rideau

Make the undefined-variables test more portable.

parent 02281587
......@@ -127,7 +127,11 @@ Some constraints:
',sexp ',condition ,x))
(t (,x)
(error "Expression ~S raises signal ~S, not ~S" ',sexp ,x ',condition)))))
(defmacro errors (condition sexp)
`(progn
(format *error-output* "~&Checking whether ~S signals error ~S~%" ',sexp ',condition)
(finish-output *error-output*)
(assert-equal ',condition (type-of (nth-value 1 (ignore-errors ,sexp))))))
;;; Helpful for debugging
(defun pathname-components (p)
......
......@@ -98,22 +98,13 @@
;;(t (c) (DBG :ustdf0 c))
(:no-error (&rest values) (DBG :ustdf1 values) nil)))
(assert
(flet ((expected-error (x)
(format t "Expected error type: ~a" (type-of x))
t))
(handler-case
(let ((*compile-file-warnings-behaviour* :error))
(load-system :undefined-variables)
nil)
(compile-failed-error (x) (expected-error x))
(compile-file-error (x) (expected-error x))
(error (x)
(format t "Unexpected error type: ~a" (type-of x))
nil))))
(assert
(handler-case
(let ((*compile-file-warnings-behaviour* :warning))
(load-system :undefined-variables :force t)
nil)
(error () t)))
(errors #+(or allegro clozure) compile-file-error
#+(or cmu scl) null
#+sbcl compile-failed-error
(let ((*compile-file-warnings-behaviour* :error))
(load-system :undefined-variables)))
(errors #+(or allegro clozure) compile-file-error
#+(or cmu scl) null
#+sbcl compile-failed-error
(let ((*compile-file-warnings-behaviour* :warning))
(load-system :undefined-variables :force t)))
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment