X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=tests%2Fpackage-locks.impure.lisp;h=9acdd24d5ee1888589c9cd1eba5854131201353a;hb=fea8ea02847ddc0864546a02480fb3e97d6fa318;hp=9a1b121e8d34f18f867388d99bc96b2507cf470c;hpb=0eb4279ffb12ccd0f70cb18c2aa3785184127b6b;p=sbcl.git diff --git a/tests/package-locks.impure.lisp b/tests/package-locks.impure.lisp index 9a1b121..9acdd24 100644 --- a/tests/package-locks.impure.lisp +++ b/tests/package-locks.impure.lisp @@ -435,6 +435,16 @@ ,form))) package-lock-violation)))) +;;;; Program-errors from lexical violations +(reset-test) +(set-test-locks t) +(dolist (pair *illegal-compile-time-forms-alist*) + (destructuring-bind (sym . form) pair + (declare (ignore sym)) + (let ((fun (compile nil `(lambda () + ,form)))) + (assert (raises-error? (funcall fun) program-error))))) + ;;;; See that trace on functions in locked packages doesn't break ;;;; anything. (assert (trace test:function :break t))