X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcode%2Fpprint.lisp;h=ef17572173438c15693ea47d827ce682c1f5001e;hb=a00ea11a89c9db677e60edf6832c905a4527b5cb;hp=c8e23015fc2e6d155abf43dee85fb1ba94a22e8f;hpb=cc27e35fc73e6765679d6f426ee144abdfac7c27;p=sbcl.git diff --git a/src/code/pprint.lisp b/src/code/pprint.lisp index c8e2301..ef17572 100644 --- a/src/code/pprint.lisp +++ b/src/code/pprint.lisp @@ -1003,22 +1003,11 @@ line break." ;;;; standard pretty-printing routines (defun pprint-array (stream array) - (cond ((or (and (null *print-array*) (null *print-readably*)) - (stringp array) - (bit-vector-p array)) + (cond ((and (null *print-array*) (null *print-readably*)) (output-ugly-object array stream)) ((and *print-readably* (not (array-readably-printable-p array))) - (restart-case - (error 'print-not-readable :object array) - (print-unreadably () - :report "Print unreadably." - (let ((*print-readably* nil)) - (pprint-array stream array))) - (use-value (o) - :report "Supply an object to be printed instead." - :interactive read-unreadable-replacement - (write o :stream stream)))) + (print-not-readable-error array stream)) ((vectorp array) (pprint-vector stream array)) (t @@ -1147,7 +1136,9 @@ line break." (declare (ignore noise)) (if (and (consp list) (consp (cdr list)) - (cddr list)) + (cddr list) + ;; Filter out (FLET FOO :IN BAR) names. + (not (eq :in (third list)))) (funcall (formatter "~:<~^~W~^ ~@_~:<~@{~:<~^~W~^~3I ~:_~/SB!PRETTY:PPRINT-LAMBDA-LIST/~1I~:@_~@{~W~^ ~_~}~:>~^ ~_~}~:>~1I~@:_~@{~W~^ ~_~}~:>") stream @@ -1488,7 +1479,7 @@ line break." (let ((*print-pprint-dispatch* *initial-pprint-dispatch-table*) (*building-initial-table* t)) (/show0 "doing SET-PPRINT-DISPATCH for regular types") - (set-pprint-dispatch 'array #'pprint-array) + (set-pprint-dispatch '(and array (not (or string bit-vector))) #'pprint-array) (set-pprint-dispatch '(cons (and symbol (satisfies mboundp))) #'pprint-macro-call -1) (set-pprint-dispatch '(cons (and symbol (satisfies fboundp)))