From 1f1d36fa8080479083af8c69e8ea3756d51910fb Mon Sep 17 00:00:00 2001 From: Stefan Monnier Date: Wed, 1 Mar 2023 12:31:09 -0500 Subject: [PATCH] * lisp/emacs-lisp/debug-early.el (debug-early-backtrace): Fix bug#61847 The `noerror` arg of `require` doesn't do what Stefan naively thought when he wrote this code, so use `condition-case` instead. Also check for `cl-defmethod` since `cl-prin1` can't be loaded before that anyway. --- lisp/emacs-lisp/debug-early.el | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/lisp/emacs-lisp/debug-early.el b/lisp/emacs-lisp/debug-early.el index 395498f2206..e393daee879 100644 --- a/lisp/emacs-lisp/debug-early.el +++ b/lisp/emacs-lisp/debug-early.el @@ -46,10 +46,10 @@ of the build process." (print-escape-control-characters t) (print-escape-nonascii t) (prin1 (if (and (fboundp 'cl-prin1) - ;; If we're being called while - ;; bootstrapping, we won't be able to load - ;; cl-print. - (require 'cl-print nil t)) + (fboundp 'cl-defmethod) ;Used by `cl-print'. + (condition-case nil + (require 'cl-print) + (error nil))) #'cl-prin1 #'prin1))) (mapbacktrace -- 2.39.5