X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcode%2Fprint.lisp;h=d3096e852c4b3bb1931337f73745f4bf367a542e;hb=b1a20dc4dee1a14c9b11eabf4130187227b9b2a7;hp=9d2ea8e7482972f459b632c9c405da4748c781e5;hpb=d6d76c98535bddabd73c6338f8393b6e698f297f;p=sbcl.git diff --git a/src/code/print.lisp b/src/code/print.lisp index 9d2ea8e..d3096e8 100644 --- a/src/code/print.lisp +++ b/src/code/print.lisp @@ -358,10 +358,14 @@ (default-structure-print object stream *current-level-in-print*)) (t (write-string "#" stream)))) + (funcallable-instance + (cond + ((not (and (boundp '*print-object-is-disabled-p*) + *print-object-is-disabled-p*)) + (print-object object stream)) + (t (output-fun object stream)))) (function - (unless (and (funcallable-instance-p object) - (printed-as-funcallable-standard-class object stream)) - (output-fun object stream))) + (output-fun object stream)) (symbol (output-symbol object stream)) (number @@ -1472,7 +1476,8 @@ ;;; the character name or the character in the #\char format. (defun output-character (char stream) (if (or *print-escape* *print-readably*) - (let ((graphicp (graphic-char-p char)) + (let ((graphicp (and (graphic-char-p char) + (standard-char-p char))) (name (char-name char))) (write-string "#\\" stream) (if (and name (not graphicp))