Skip to content

Commit

Permalink
1.0.28.70: regression in ABOUT-TO-MODIFY-SYMBOL-VALUE from 1.0.28.30
Browse files Browse the repository at this point in the history
 * Patch and test-case by Stas Boukarev.
  • Loading branch information
nikodemus committed May 23, 2009
1 parent 0567612 commit 45ec97e
Show file tree
Hide file tree
Showing 3 changed files with 30 additions and 3 deletions.
4 changes: 2 additions & 2 deletions src/code/early-extensions.lisp
Expand Up @@ -805,8 +805,8 @@
(unless (sb!kernel::%%typep new-value type nil)
(let ((spec (type-specifier type)))
(error 'simple-type-error
:format-control "Cannot ~@? to ~S (not of type ~S.)"
:format-arguments (list action (describe-action) new-value spec)
:format-control "~@<Cannot ~@? to ~S, not of type ~S.~:@>"
:format-arguments (list (describe-action) symbol new-value spec)
:datum new-value
:expected-type spec))))))))
(values))
Expand Down
27 changes: 27 additions & 0 deletions tests/symbol.impure.lisp
@@ -0,0 +1,27 @@
;;;; miscellaneous impure tests of SYMBOL-related stuff

;;;; This software is part of the SBCL system. See the README file for
;;;; more information.
;;;;
;;;; While most of SBCL is derived from the CMU CL system, the test
;;;; files (like this one) were written from scratch after the fork
;;;; from CMU CL.
;;;;
;;;; This software is in the public domain and is provided with
;;;; absolutely no warranty. See the COPYING and CREDITS files for
;;;; more information.

(in-package "CL-USER")

(declaim (type (simple-array fixnum (*)) *foo*))
(with-test (:name :defvar-type-error)
(assert (eq :ok
(handler-case
(eval `(defvar *foo* (make-array 10 :element-type '(unsigned-byte 60))))
(type-error (e)
(when (and (typep e 'type-error)
(equal '(simple-array fixnum (*))
(type-error-expected-type e)))
;; Check that it prints without an error.
(let ((string (princ-to-string e)))
:ok)))))))
2 changes: 1 addition & 1 deletion version.lisp-expr
Expand Up @@ -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.28.69"
"1.0.28.70"

0 comments on commit 45ec97e

Please sign in to comment.