X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcode%2Fntrace.lisp;h=a400ff777a61c200abc833e2ff1f6e3e2af91ff7;hb=dcb73f3edef1e31078fbe585e2fafbd26743efd7;hp=f4bbf63660ff9c83e58a069ad0a01bb406aa7639;hpb=dc3c6bfad38cbd96013cf76ce93a9273f01c46d2;p=sbcl.git diff --git a/src/code/ntrace.lisp b/src/code/ntrace.lisp index f4bbf63..a400ff7 100644 --- a/src/code/ntrace.lisp +++ b/src/code/ntrace.lisp @@ -265,7 +265,8 @@ ;; with DEFVAR. (locally (declare (special basic-definition arg-list)) - (prin1 `(,(trace-info-what info) ,@arg-list))) + (prin1 `(,(trace-info-what info) + ,@(mapcar #'ensure-printable-object arg-list)))) (print-frame-call frame *standard-output*)) (terpri) (trace-print frame (trace-info-print info)) @@ -301,15 +302,16 @@ (*standard-output* (make-string-output-stream)) (*in-trace* t)) (fresh-line) - (pprint-logical-block (*standard-output* nil) - (print-trace-indentation) - (pprint-indent :current 2) - (format t "~S returned" (trace-info-what info)) - (dolist (v *trace-values*) - (write-char #\space) - (pprint-newline :linear) - (prin1 v))) - (terpri) + (let ((*print-pretty* t)) + (pprint-logical-block (*standard-output* nil) + (print-trace-indentation) + (pprint-indent :current 2) + (format t "~S returned" (trace-info-what info)) + (dolist (v *trace-values*) + (write-char #\space) + (pprint-newline :linear) + (prin1 (ensure-printable-object v)))) + (terpri)) (trace-print frame (trace-info-print-after info)) (write-sequence (get-output-stream-string *standard-output*) *trace-output*)