]> 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 18:18:34 +0000 (19:18 +0100)
commit6283b9233459d74f95e9b0300f025a49f9674fb9
treee252e8cb4228b1321d59e14b3cbbac8980d5f694
parent30d2b72c4124b351026a8a5420686d5dc04ecc61
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