From 86408b246c8bf26cbadd830322e348267da22162 Mon Sep 17 00:00:00 2001 From: Stefan Monnier Date: Mon, 3 Mar 2008 03:40:04 +0000 Subject: [PATCH] (byte-compile-maybe-guarded): Remove optimization that was working around the form-code-walker bug. --- lisp/ChangeLog | 3 +++ lisp/emacs-lisp/bytecomp.el | 18 +----------------- 2 files changed, 4 insertions(+), 17 deletions(-) diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 4cf70876075..4c101745853 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,5 +1,8 @@ 2008-03-03 Stefan Monnier + * emacs-lisp/bytecomp.el (byte-compile-maybe-guarded): + Remove optimization that was working around the form-code-walker bug. + * emacs-lisp/byte-opt.el (byte-optimize-form-code-walker): Walk into the body of lambdas after byte-compile-unfold-lambda. diff --git a/lisp/emacs-lisp/bytecomp.el b/lisp/emacs-lisp/bytecomp.el index 797c44ead10..e62968a392d 100644 --- a/lisp/emacs-lisp/bytecomp.el +++ b/lisp/emacs-lisp/bytecomp.el @@ -3569,23 +3569,7 @@ that suppresses all warnings during execution of BODY." (byte-compile-bound-variables (if bound-list (append bound-list byte-compile-bound-variables) - byte-compile-bound-variables)) - ;; Suppress all warnings, for code not used in Emacs. - ;; FIXME: by the time this is executed the `featurep' - ;; emacs/xemacs tests have been optimized away, so this is - ;; not doing anything useful here, is should probably be - ;; moved to a different place. - ;; 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)) - ) + byte-compile-bound-variables))) (unwind-protect (progn ,@body) ;; Maybe remove the function symbol from the unresolved list. -- 2.39.2