Detect missing lambda-lists.
...and missing -o to canonicalize-whitespace.
key-vars keywords)
,@forms))))))
(mapcar (lambda (clause)
+ (unless (listp (second clause))
+ (error "Malformed ~S clause, no lambda-list:~% ~S"
+ 'restart-case clause))
(with-keyword-pairs ((report interactive test
&rest forms)
(cddr clause))
(cl:in-package :cl-user)
+(load "test-util.lisp")
+
;;; Until 0.7.7.21, (MAKE-CONDITION 'FILE-ERROR :PATHNAME "FOO")
;;; wasn't printable, because the REPORT function for FILE-ERROR
;;; referred to unbound slots. This was reported and fixed by Antonio
:format-arguments nil)
'cerror (get-universal-time))
(assert (= x 1))))
+
+(with-test (:name :malformed-restart-case-clause)
+ (assert (eq :ok
+ (handler-case
+ (macroexpand `(restart-case (error "foo")
+ (foo :report "quux" (quux))))
+ (simple-error (e)
+ (assert (equal '(restart-case (foo :report "quux" (quux)))
+ (simple-condition-format-arguments e)))
+ :ok)))))
;;; checkins which aren't released. (And occasionally for internal
;;; versions, especially for internal versions off the main CVS
;;; branch, it gets hairier, e.g. "0.pre7.14.flaky4.13".)
-"1.0.44.31"
+"1.0.44.32"