]> git.eshelyaron.com Git - emacs.git/commit
Elide broken but unnecessary `if` optimisations
authorMattias Engdegård <mattiase@acm.org>
Fri, 16 Dec 2022 14:56:04 +0000 (15:56 +0100)
committerMattias Engdegård <mattiase@acm.org>
Fri, 16 Dec 2022 16:17:23 +0000 (17:17 +0100)
commit13aa376e93564a8cf2ddbbcf0968c6666620db89
tree0d3393990e9f70e050a44a9b46317e6d10308ac2
parent17d65c99cd812e085d85f790c83ec0d540490a55
Elide broken but unnecessary `if` optimisations

* lisp/emacs-lisp/byte-opt.el (byte-optimize-if):
Remove explicit clauses purposing to simplify

    (if X nil t) -> (not X)
    (if X t nil) -> (not (not X))

but never did so because of a coding mistake (eq instead of equal),
found by a recently added warning.  They weren't actually needed
thanks to the optimiser's fixpoint iteration: we eventually get the
same results through

    (if X nil t) -> (if (not X) t nil) -> (if (not X) t) -> (not X)
    (if X t nil) -> (if X t) -> (not (not X))
lisp/emacs-lisp/byte-opt.el