summaryrefslogtreecommitdiff
path: root/lisp/emacs-lisp/cl-print.el
diff options
context:
space:
mode:
authorStefan Monnier <monnier@iro.umontreal.ca>2017-12-12 22:40:27 -0500
committerStefan Monnier <monnier@iro.umontreal.ca>2017-12-12 22:40:27 -0500
commit92ca51cc5e9d30818f5abf60a5a13f08f2ea7e96 (patch)
treea3ae7961ed0821184862dc65a2f0589e53975f93 /lisp/emacs-lisp/cl-print.el
parent8c91d31beab0234e8a187864df46af543022c656 (diff)
downloademacs-92ca51cc5e9d30818f5abf60a5a13f08f2ea7e96.tar.gz
emacs-92ca51cc5e9d30818f5abf60a5a13f08f2ea7e96.tar.bz2
emacs-92ca51cc5e9d30818f5abf60a5a13f08f2ea7e96.zip
* lisp/subr.el (backtrace--print-frame): Use cl-prin1
* lisp/emacs-lisp/cl-print.el (cl-prin1): Catch errors, since callers generally don't expect errors.
Diffstat (limited to 'lisp/emacs-lisp/cl-print.el')
-rw-r--r--lisp/emacs-lisp/cl-print.el13
1 files changed, 7 insertions, 6 deletions
diff --git a/lisp/emacs-lisp/cl-print.el b/lisp/emacs-lisp/cl-print.el
index 4fc178c29aa..5a26ecf05fe 100644
--- a/lisp/emacs-lisp/cl-print.el
+++ b/lisp/emacs-lisp/cl-print.el
@@ -269,12 +269,13 @@ Output is further controlled by the variables
`cl-print-readably', `cl-print-compiled', along with output
variables for the standard printing functions. See Info
node `(elisp)Output Variables'."
- (cond
- (cl-print-readably (prin1 object stream))
- ((not print-circle) (cl-print-object object stream))
- (t
- (let ((cl-print--number-table (cl-print--preprocess object)))
- (cl-print-object object stream)))))
+ (if cl-print-readably
+ (prin1 object stream)
+ (with-demoted-errors "cl-prin1: %S"
+ (if (not print-circle)
+ (cl-print-object object stream)
+ (let ((cl-print--number-table (cl-print--preprocess object)))
+ (cl-print-object object stream))))))
;;;###autoload
(defun cl-prin1-to-string (object)