diff options
author | Michael Albinus <michael.albinus@gmx.de> | 2021-08-08 12:39:11 +0200 |
---|---|---|
committer | Michael Albinus <michael.albinus@gmx.de> | 2021-08-08 12:39:11 +0200 |
commit | e763c8947a55bfff703427b9bb0524638e5d7eae (patch) | |
tree | 186b35800785f76b91a0516960b22a01c2302854 /lisp/emacs-lisp/byte-opt.el | |
parent | 80cccd7ff15d254cb412e9939e27a348fbaa0425 (diff) | |
parent | adab672edb3fad0851a52e3b6ccf3ac31c80b025 (diff) | |
download | emacs-e763c8947a55bfff703427b9bb0524638e5d7eae.tar.gz emacs-e763c8947a55bfff703427b9bb0524638e5d7eae.tar.bz2 emacs-e763c8947a55bfff703427b9bb0524638e5d7eae.zip |
Merge branch 'master' of git.sv.gnu.org:/srv/git/emacs
Diffstat (limited to 'lisp/emacs-lisp/byte-opt.el')
-rw-r--r-- | lisp/emacs-lisp/byte-opt.el | 12 |
1 files changed, 3 insertions, 9 deletions
diff --git a/lisp/emacs-lisp/byte-opt.el b/lisp/emacs-lisp/byte-opt.el index 96072ea1b55..6475f69eded 100644 --- a/lisp/emacs-lisp/byte-opt.el +++ b/lisp/emacs-lisp/byte-opt.el @@ -601,15 +601,9 @@ Same format as `byte-optimize--lexvars', with shared structure and contents.") (lexvar (assq var byte-optimize--lexvars)) (value (byte-optimize-form expr nil))) (when lexvar - ;; Set a new value or inhibit further substitution. - (setcdr (cdr lexvar) - (and - ;; Inhibit if bound outside conditional code. - (not (assq var byte-optimize--vars-outside-condition)) - ;; The new value must be substitutable. - (byte-optimize--substitutable-p value) - (list value))) - (setcar (cdr lexvar) t)) ; Mark variable to be kept. + (setcar (cdr lexvar) t) ; Mark variable to be kept. + (setcdr (cdr lexvar) nil)) ; Inhibit further substitution. + (push var var-expr-list) (push value var-expr-list)) (setq args (cddr args))) |