X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcode%2Fcondition.lisp;h=ee00b04325d42faa6dba35968f8885b760a716b9;hb=c40c56eedec692acb930ec0e358a933ab33a3560;hp=14a50ce2a9aa1d377ce1cfdc0a2b9b08e150067c;hpb=6cdf6f788bd76ead3fd60899d101c718fdeb1b4e;p=sbcl.git diff --git a/src/code/condition.lisp b/src/code/condition.lisp index 14a50ce..ee00b04 100644 --- a/src/code/condition.lisp +++ b/src/code/condition.lisp @@ -171,7 +171,7 @@ ;;; The current code doesn't seem to quite match that. (def!method print-object ((x condition) stream) (if *print-escape* - (if (typep x 'simple-condition) + (if (and (typep x 'simple-condition) (slot-boundp x 'format-control)) (print-unreadable-object (x stream :type t :identity t) (format stream "~S" (simple-condition-format-control x))) (print-unreadable-object (x stream :type t :identity t))) @@ -946,6 +946,9 @@ (define-condition type-warning (reference-condition simple-warning) () (:default-initargs :references (list '(:sbcl :node "Handling of Types")))) +(define-condition type-style-warning (reference-condition simple-style-warning) + () + (:default-initargs :references (list '(:sbcl :node "Handling of Types")))) (define-condition local-argument-mismatch (reference-condition simple-warning) ()