branch: externals/compat commit 232adf27980029f1c69da8b0334258017f4a63bd Author: Philip Kaludercic <phil...@posteo.net> Commit: Philip Kaludercic <phil...@posteo.net>
Avoid macroexpanding declare-function in compat-entwine --- compat.el | 34 ++++++++++++++++++---------------- 1 file changed, 18 insertions(+), 16 deletions(-) diff --git a/compat.el b/compat.el index dbab490905..49ff4c3fdc 100644 --- a/compat.el +++ b/compat.el @@ -70,22 +70,24 @@ (while (progn (forward-comment 1) (not (eobp))) - (let ((form (read (current-buffer)))) - (when (memq (car-safe form) - '(declare-function - compat-defun - compat-defmacro - compat-advise - compat-defvar - defvar)) - (push form defs))))) - ;; We bind `byte-compile-current-file' before macro-expanding, - ;; so that `compat--generate-function' can correctly infer the - ;; compatibility version currently being processed. - (let ((byte-compile-current-file file)) - (macroexpand-all - (macroexp-progn - (nreverse defs))))))))) + ;; We bind `byte-compile-current-file' before + ;; macro-expanding, so that `compat--generate-function' + ;; can correctly infer the compatibility version currently + ;; being processed. + (let ((byte-compile-current-file file) + (form (read (current-buffer)))) + (cond + ((memq (car-safe form) + '(compat-defun + compat-defmacro + compat-advise + compat-defvar)) + (push (macroexpand-all form) defs)) + ((memq (car-safe form) + '(declare-function + defvar)) + (push form defs)))))) + (macroexp-progn (nreverse defs))))))) (compat-entwine 24) (compat-entwine 25)