From 4b2d77d8dbd5b051bb681bacaee4a6faffbbdde9 Mon Sep 17 00:00:00 2001 From: Stefan Monnier Date: Sat, 11 Jun 2016 17:38:11 -0400 Subject: [PATCH] * lisp/emacs-lisp/macroexp.el (macroexp--expand-all): Fix (bug#19704) Don't rewrite (funcall 'f ...) to (f ...). --- lisp/emacs-lisp/macroexp.el | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lisp/emacs-lisp/macroexp.el b/lisp/emacs-lisp/macroexp.el index ed4d6e49a93..310ca29e9a1 100644 --- a/lisp/emacs-lisp/macroexp.el +++ b/lisp/emacs-lisp/macroexp.el @@ -261,7 +261,7 @@ Assumes the caller has bound `macroexpand-all-environment'." (format "%s quoted with ' rather than with #'" (list 'lambda (nth 1 f) '...)) (macroexp--expand-all `(,fun ,arg1 ,f . ,args)))) - (`(funcall (,(or 'quote 'function) ,(and f (pred symbolp)) . ,_) . ,args) + (`(funcall #',(and f (pred symbolp)) . ,args) ;; Rewrite (funcall #'foo bar) to (foo bar), in case `foo' ;; has a compiler-macro. (macroexp--expand-all `(,f . ,args))) -- 2.39.2