From: Lars Ingebrigtsen Date: Mon, 17 Jun 2019 10:36:01 +0000 (+0200) Subject: Make do-after-load-evaluation check whether warnings are enabled. X-Git-Tag: emacs-27.0.90~2446 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=e6f2f5ace17fa752194f94f6762d3684d0d5b40a;p=emacs.git Make do-after-load-evaluation check whether warnings are enabled. * lisp/subr.el (do-after-load-evaluation): Heed `byte-compile-warning-enabled-p', if defined. This allows suppressing the warning about packages being obsolete. --- diff --git a/lisp/subr.el b/lisp/subr.el index d505eb3917f..66568b795de 100644 --- a/lisp/subr.el +++ b/lisp/subr.el @@ -4442,25 +4442,28 @@ This function is called directly from the C code." (when (string-match-p "/obsolete/\\([^/]*\\)\\'" abs-file) ;; Maybe we should just use display-warning? This seems yucky... (let* ((file (file-name-nondirectory abs-file)) - (msg (format "Package %s is obsolete!" - (substring file 0 - (string-match "\\.elc?\\>" file))))) + (package (intern (substring file 0 + (string-match "\\.elc?\\>" file)) + obarray)) + (msg (format "Package %s is obsolete" package))) ;; Cribbed from cl--compiling-file. - (if (and (boundp 'byte-compile--outbuffer) - (bufferp (symbol-value 'byte-compile--outbuffer)) - (equal (buffer-name (symbol-value 'byte-compile--outbuffer)) - " *Compiler Output*")) - ;; Don't warn about obsolete files using other obsolete files. - (unless (and (stringp byte-compile-current-file) - (string-match-p "/obsolete/[^/]*\\'" - (expand-file-name - byte-compile-current-file - byte-compile-root-dir))) - (byte-compile-warn "%s" msg)) - (run-with-timer 0 nil - (lambda (msg) - (message "%s" msg)) - msg)))) + (when (or (not (fboundp 'byte-compile-warning-enabled-p)) + (byte-compile-warning-enabled-p 'obsolete package)) + (if (and (boundp 'byte-compile--outbuffer) + (bufferp (symbol-value 'byte-compile--outbuffer)) + (equal (buffer-name (symbol-value 'byte-compile--outbuffer)) + " *Compiler Output*")) + ;; Don't warn about obsolete files using other obsolete files. + (unless (and (stringp byte-compile-current-file) + (string-match-p "/obsolete/[^/]*\\'" + (expand-file-name + byte-compile-current-file + byte-compile-root-dir))) + (byte-compile-warn "%s" msg)) + (run-with-timer 0 nil + (lambda (msg) + (message "%s" msg)) + msg))))) ;; Finally, run any other hook. (run-hook-with-args 'after-load-functions abs-file))