1.0.21.5: fix WITH-PACKAGE-ITERATOR error signaling
authorNikodemus Siivola <nikodemus@random-state.net>
Sun, 5 Oct 2008 11:57:55 +0000 (11:57 +0000)
committerNikodemus Siivola <nikodemus@random-state.net>
Sun, 5 Oct 2008 11:57:55 +0000 (11:57 +0000)
 * Patch by Tobias C. Rittweiler / Ariel Badichi.

src/code/package.lisp
tests/packages.impure.lisp
version.lisp-expr

index 2bb677f..b1366d6 100644 (file)
@@ -295,10 +295,10 @@ of :INHERITED :EXTERNAL :INTERNAL."
                       :INHERITED must be supplied."))
            ,(dolist (symbol symbol-types)
               (unless (member symbol '(:internal :external :inherited))
-                (error 'program-error
+                (error 'simple-program-error
                        :format-control
                        "~S is not one of :INTERNAL, :EXTERNAL, or :INHERITED."
-                       :format-argument symbol)))
+                       :format-arguments (list symbol))))
            (,init-macro ,(car ordered-types))
            (flet ((,real-symbol-p (number)
                     (> number 1)))
index 5078b9e..0a477b3 100644 (file)
@@ -255,3 +255,15 @@ if a restart was invoked."
       (is restartedp)
       (is (eq (sym "FOO" "SYM")
               (sym "BAZ" "SYM"))))))
+
+;;; WITH-PACKAGE-ITERATOR error signalling had problems
+(with-test (:name with-package-itarator.error)
+  (assert (eq :good
+              (handler-case
+                  (progn
+                    (eval '(with-package-iterator (sym :cl-user :foo)
+                            (sym)))
+                    :bad)
+                ((and simple-condition program-error) (c)
+                  (assert (equal (list :foo) (simple-condition-format-arguments c)))
+                  :good)))))
index 41dd6d3..3985b86 100644 (file)
@@ -17,4 +17,4 @@
 ;;; 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.21.4"
+"1.0.21.5"