* lisp/emacs-lisp/macroexp.el (macroexp--expand-all): Fix (bug#19704)

Don't rewrite (funcall 'f ...) to (f ...).
This commit is contained in:
Stefan Monnier 2016-06-11 17:38:11 -04:00
parent 12e009e52f
commit 4b2d77d8db

View 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)))