summaryrefslogtreecommitdiff
path: root/lisp/emacs-lisp
diff options
context:
space:
mode:
authorAndrea Corallo <akrl@sdf.org>2020-06-04 10:33:07 +0100
committerAndrea Corallo <akrl@sdf.org>2020-06-04 10:33:07 +0100
commitf5ea65b43678621cb450d7afbcd46032258d4b20 (patch)
treedcc643ae66589a1690c50895a46e8004c981ead0 /lisp/emacs-lisp
parente4e6bb7fddaa3a4e82748c106366fe9113dc16d9 (diff)
parent4fff6502368e87b3c031589a1a96267243f868b0 (diff)
downloademacs-f5ea65b43678621cb450d7afbcd46032258d4b20.tar.gz
emacs-f5ea65b43678621cb450d7afbcd46032258d4b20.tar.bz2
emacs-f5ea65b43678621cb450d7afbcd46032258d4b20.zip
Merge remote-tracking branch 'savannah/master' into HEAD
Diffstat (limited to 'lisp/emacs-lisp')
-rw-r--r--lisp/emacs-lisp/bytecomp.el7
1 files changed, 4 insertions, 3 deletions
diff --git a/lisp/emacs-lisp/bytecomp.el b/lisp/emacs-lisp/bytecomp.el
index f33c30e5742..9e39b8f78ac 100644
--- a/lisp/emacs-lisp/bytecomp.el
+++ b/lisp/emacs-lisp/bytecomp.el
@@ -2820,14 +2820,15 @@ If FORM is a lambda or a macro, byte-compile it as a function."
;; Expand macros.
(setq fun (byte-compile-preprocess fun))
(setq fun (byte-compile-top-level fun nil 'eval))
- (if macro (push 'macro fun))
(if (symbolp form)
;; byte-compile-top-level returns an *expression* equivalent to the
;; `fun' expression, so we need to evaluate it, tho normally
;; this is not needed because the expression is just a constant
;; byte-code object, which is self-evaluating.
- (fset form (eval fun t))
- fun)))))))
+ (setq fun (eval fun t)))
+ (if macro (push 'macro fun))
+ (if (symbolp form) (fset form fun))
+ fun))))))
(defun byte-compile-sexp (sexp)
"Compile and return SEXP."