From 666a3a77ee04225cf861ed8e1e7f378b8438d925 Mon Sep 17 00:00:00 2001 From: Nikodemus Siivola Date: Sun, 5 Oct 2008 11:57:55 +0000 Subject: [PATCH] 1.0.21.5: fix WITH-PACKAGE-ITERATOR error signaling * Patch by Tobias C. Rittweiler / Ariel Badichi. --- src/code/package.lisp | 4 ++-- tests/packages.impure.lisp | 12 ++++++++++++ version.lisp-expr | 2 +- 3 files changed, 15 insertions(+), 3 deletions(-) diff --git a/src/code/package.lisp b/src/code/package.lisp index 2bb677f..b1366d6 100644 --- a/src/code/package.lisp +++ b/src/code/package.lisp @@ -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))) diff --git a/tests/packages.impure.lisp b/tests/packages.impure.lisp index 5078b9e..0a477b3 100644 --- a/tests/packages.impure.lisp +++ b/tests/packages.impure.lisp @@ -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))))) diff --git a/version.lisp-expr b/version.lisp-expr index 41dd6d3..3985b86 100644 --- a/version.lisp-expr +++ b/version.lisp-expr @@ -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" -- 1.7.10.4