diff options
author | Eli Zaretskii <eliz@gnu.org> | 2024-04-29 20:36:36 +0300 |
---|---|---|
committer | Eli Zaretskii <eliz@gnu.org> | 2024-04-29 20:36:36 +0300 |
commit | 4d079209f0a020e87b38567fa0058f06da069867 (patch) | |
tree | e9bcb01e4ce89ce8955f9f7a0bfa3d04a4387a12 /lisp/emacs-lisp | |
parent | f6ae5939b950bdec86471b02e81d1b3827546a2d (diff) | |
parent | 7cf767ef54f2cf1d2873fe4dd07664b401d8044b (diff) | |
download | emacs-4d079209f0a020e87b38567fa0058f06da069867.tar.gz emacs-4d079209f0a020e87b38567fa0058f06da069867.tar.bz2 emacs-4d079209f0a020e87b38567fa0058f06da069867.zip |
Merge branch 'master' of git.savannah.gnu.org:/srv/git/emacs
Diffstat (limited to 'lisp/emacs-lisp')
-rw-r--r-- | lisp/emacs-lisp/bytecomp.el | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/lisp/emacs-lisp/bytecomp.el b/lisp/emacs-lisp/bytecomp.el index 7aae87c50dc..6b7b804d7de 100644 --- a/lisp/emacs-lisp/bytecomp.el +++ b/lisp/emacs-lisp/bytecomp.el @@ -2962,8 +2962,10 @@ If FORM is a lambda or a macro, byte-compile it as a function." (when (or (symbolp form) (interpreted-function-p fun)) ;; `fun' is a function *value*, so try to recover its ;; corresponding source code. - (setq lexical-binding (not (null (aref fun 2)))) - (setq fun (byte-compile--reify-function fun)) + (if (not (interpreted-function-p fun)) + (setq lexical-binding nil) + (setq lexical-binding (not (null (aref fun 2)))) + (setq fun (byte-compile--reify-function fun))) (setq need-a-value t)) ;; Expand macros. (setq fun (byte-compile-preprocess fun)) |