]> code.delx.au - gnu-emacs/commitdiff
* lisp/emacs-lisp/macroexp.el (macroexp--expand-all): Fix (bug#19704)
authorStefan Monnier <monnier@iro.umontreal.ca>
Sat, 11 Jun 2016 21:38:11 +0000 (17:38 -0400)
committerStefan Monnier <monnier@iro.umontreal.ca>
Sat, 11 Jun 2016 21:38:11 +0000 (17:38 -0400)
Don't rewrite (funcall 'f ...) to (f ...).

lisp/emacs-lisp/macroexp.el

index ed4d6e49a93a8eabd6df694a9fead8016ddeeeb8..310ca29e9a1cf4a7f0c88916905fa1a50bf08c5a 100644 (file)
@@ -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)))