Compiler optimizer: push forms onto byte-compile-form-stack
This fixes bug#67483. * lisp/emacs-lisp/byte-opt.el (byte-optimize-form): Push and pop FORM onto/off byte-compile-form-stack so that warning messages get a position near to the erroneous source.
This commit is contained in:
parent
76cf700ecb
commit
1dab381c82
1 changed files with 2 additions and 0 deletions
|
@ -514,6 +514,7 @@ There can be multiple entries for the same NAME if it has several aliases.")
|
|||
(byte-optimize-form form for-effect)))
|
||||
|
||||
(defun byte-optimize-form (form &optional for-effect)
|
||||
(push form byte-compile-form-stack)
|
||||
(while
|
||||
(progn
|
||||
;; First, optimize all sub-forms of this one.
|
||||
|
@ -530,6 +531,7 @@ There can be multiple entries for the same NAME if it has several aliases.")
|
|||
(byte-compile-log " %s\t==>\t%s" old new)
|
||||
(setq form new)
|
||||
(not (eq new old))))))))
|
||||
(pop byte-compile-form-stack)
|
||||
form)
|
||||
|
||||
(defun byte-optimize--rename-var-body (var new-var body)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue