mirror of
git://git.sv.gnu.org/emacs.git
synced 2025-12-06 22:41:06 -08:00
Strip positions from symbols before the eval in eval-{when,and}-compile.
This fixes bug #54079. * lisp/emacs-lisp/bytecomp.el (byte-compile-initial-macro-environment): Change the position of 'byte-run-strip-symbol-positions' in the eval-when-compile entry. Add a call to `byte-run-strip-symbol-positions' in the eval-and-compile entry.
This commit is contained in:
parent
0e5f8e24af
commit
31a2428d6f
1 changed files with 6 additions and 4 deletions
|
|
@ -500,8 +500,9 @@ Return the compile-time value of FORM."
|
|||
byte-compile-new-defuns))
|
||||
(setf result
|
||||
(byte-compile-eval
|
||||
(byte-run-strip-symbol-positions
|
||||
(byte-compile-top-level
|
||||
(byte-compile-preprocess form)))))))
|
||||
(byte-compile-preprocess form))))))))
|
||||
(list 'quote result))))
|
||||
(eval-and-compile . ,(lambda (&rest body)
|
||||
(byte-compile-recurse-toplevel
|
||||
|
|
@ -512,9 +513,10 @@ Return the compile-time value of FORM."
|
|||
;; or byte-compile-file-form.
|
||||
(let* ((print-symbols-bare t) ; Possibly redundant binding.
|
||||
(expanded
|
||||
(macroexpand--all-toplevel
|
||||
form
|
||||
macroexpand-all-environment)))
|
||||
(byte-run-strip-symbol-positions
|
||||
(macroexpand--all-toplevel
|
||||
form
|
||||
macroexpand-all-environment))))
|
||||
(eval expanded lexical-binding)
|
||||
expanded)))))
|
||||
(with-suppressed-warnings
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue