diff options
-rw-r--r-- | lisp/emacs-lisp/bytecomp.el | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/lisp/emacs-lisp/bytecomp.el b/lisp/emacs-lisp/bytecomp.el index fa2cd1a00d1..7e546712864 100644 --- a/lisp/emacs-lisp/bytecomp.el +++ b/lisp/emacs-lisp/bytecomp.el @@ -512,10 +512,11 @@ Return the compile-time value of FORM." (eval expanded lexical-binding) expanded))))) (with-suppressed-warnings - . (lambda (warnings &rest body) - `(internal--with-suppressed-warnings - ',warnings ,(macroexpand-all `(progn ,@body) - macroexpand-all-environment))))) + . ,(lambda (warnings &rest body) + (list #'internal--with-suppressed-warnings + (list 'quote warnings) + (macroexpand-all (cons 'progn body) + macroexpand-all-environment))))) "The default macro-environment passed to macroexpand by the compiler. Placing a macro here will cause a macro to have different semantics when expanded by the compiler as when expanded by the interpreter.") @@ -4803,7 +4804,7 @@ binding slots have been popped." (defun byte-compile-suppressed-warnings (form) (let ((byte-compile-suppressed-warnings (append (cadadr form) byte-compile-suppressed-warnings))) - (mapc 'byte-compile-file-form (cddr form)) + (byte-compile-progn (cons 'progn (cddr form))) nil)) ;; Warn about misuses of make-variable-buffer-local. |