From d45885f7e0025fb5bd0756ba78c511a981d64533 Mon Sep 17 00:00:00 2001 From: Glenn Morris Date: Wed, 11 May 2011 19:36:05 -0700 Subject: [PATCH] bytecomp.el fix for bug#8647 * lisp/emacs-lisp/bytecomp.el (byte-compile-file-form-defmumble): Let byte-compile-initial-macro-environment always take precedence. --- lisp/ChangeLog | 5 +++++ lisp/emacs-lisp/bytecomp.el | 6 +++++- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 40e9b00cd33..b223382b271 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,8 @@ +2011-05-12 Glenn Morris + + * emacs-lisp/bytecomp.el (byte-compile-file-form-defmumble): + Let byte-compile-initial-macro-environment always take precedence. + 2011-05-12 Stefan Monnier * net/rcirc.el: Add support for SSL/TLS connections. diff --git a/lisp/emacs-lisp/bytecomp.el b/lisp/emacs-lisp/bytecomp.el index 02b886cdda0..e7f2115a848 100644 --- a/lisp/emacs-lisp/bytecomp.el +++ b/lisp/emacs-lisp/bytecomp.el @@ -2421,7 +2421,11 @@ by side-effects." (let* ((code (byte-compile-lambda (nthcdr 2 form) t))) (if this-one - (setcdr this-one code) + ;; A definition in b-c-initial-m-e should always take precedence + ;; during compilation, so don't let it be redefined. (Bug#8647) + (or (and macrop + (assq name byte-compile-initial-macro-environment)) + (setcdr this-one code)) (set this-kind (cons (cons name code) (symbol-value this-kind)))) -- 2.39.2