diff --git a/code/print.lisp b/code/print.lisp index 95f008d333190241b06a2f742ca94a2cd813a6e5..9ce5364f96ebd222ce5e120270c148900c3ad710 100644 --- a/code/print.lisp +++ b/code/print.lisp @@ -240,9 +240,7 @@ ;; If a list, go through element by element, being careful ;; about not running over the printlength (list - (if (clos::funcallable-instance-p object) - (clos::print-object object stream (1+ currlevel)) - (output-list object stream (1+ currlevel)))) + (output-list object stream (1+ currlevel))) (string (if *print-escape* (quote-string object stream) @@ -703,6 +701,7 @@ (defun output-structure (structure stream currlevel) (funcall (or (info type printer (svref structure 0)) #'c::default-structure-print) + structure stream currlevel)) ;;;; Functions to help print strings. @@ -1252,7 +1251,7 @@ ;;; Functions Objects and other implmentation specific objects ;;; are output here. -(defun output-random (object) +(defun output-random (object stream) (write-string "#<" stream) (if (compiled-function-p object) (output-function-object object stream)