From c01e3aa1dd399f959b57e810c28da6faa6739a5f Mon Sep 17 00:00:00 2001 From: Glenn Morris Date: Sat, 1 Mar 2008 20:07:28 +0000 Subject: [PATCH] (byte-compile-maybe-guarded): Restore code commented out 2007-11-10. --- lisp/emacs-lisp/bytecomp.el | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/lisp/emacs-lisp/bytecomp.el b/lisp/emacs-lisp/bytecomp.el index 356f0d7890b..064a7aeb768 100644 --- a/lisp/emacs-lisp/bytecomp.el +++ b/lisp/emacs-lisp/bytecomp.el @@ -3562,10 +3562,16 @@ that suppresses all warnings during execution of BODY." ;; emacs/xemacs tests have been optimized away, so this is ;; not doing anything useful here, is should probably be ;; moved to a different place. - ;; (byte-compile-warnings - ;; (if (member ,condition '((featurep 'xemacs) - ;; (not (featurep 'emacs)))) - ;; nil byte-compile-warnings)) + ;; It is doing _something_. If this is commented out, then + ;; compiling a file which requires another file which + ;; defines a defsubst that uses (featurep 'xemacs) results + ;; in a spurious compilation warning about the xemacs code. Eg: + ;; (defsubst foo () (if (featurep 'xemacs) (setq foo t))) + ;; where foo is a free variable. + (byte-compile-warnings + (if (member ,condition '((featurep 'xemacs) + (not (featurep 'emacs)))) + nil byte-compile-warnings)) ) (unwind-protect (progn ,@body) -- 2.39.2