]> git.eshelyaron.com Git - emacs.git/commit
Simplify lexical let-optimisations
authorMattias Engdegård <mattiase@acm.org>
Fri, 30 Jul 2021 10:22:01 +0000 (12:22 +0200)
committerMattias Engdegård <mattiase@acm.org>
Fri, 30 Jul 2021 12:37:38 +0000 (14:37 +0200)
commitf472dd8ea5d94f0231bb7bf23552895c3ab19689
treeab58ca7f73794d4305c52050a46a852c8358e3eb
parent16876744d44b07ab9486fcea388254b9b8f617a5
Simplify lexical let-optimisations

Ensure in cconv that let-bindings have the normal form (VAR EXPR)
where VAR is a valid variable name, so that we don't need to keep
re-checking this all the time in the optimiser.

* lisp/emacs-lisp/byte-opt.el
(byte-optimize-enable-variable-constprop)
(byte-optimize-warn-eliminated-variable): Remove; these were mainly
used for debugging.
* lisp/emacs-lisp/byte-opt.el (byte-optimize-let-form):
Assume normalised let-bindings (with lexical-binding).
Stop using the variables removed above.
* lisp/emacs-lisp/cconv.el (cconv-convert): Ensure normalised
let-bindings.  Malformed bindings are dropped after warning.

remove byte-optimize-warn-eliminated-variable
lisp/emacs-lisp/byte-opt.el
lisp/emacs-lisp/cconv.el