emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] Changes to emacs/lisp/emacs-lisp/byte-opt.el,v


From: Stefan Monnier
Subject: [Emacs-diffs] Changes to emacs/lisp/emacs-lisp/byte-opt.el,v
Date: Fri, 24 Aug 2007 14:39:28 +0000

CVSROOT:        /sources/emacs
Module name:    emacs
Changes by:     Stefan Monnier <monnier>        07/08/24 14:39:27

Index: emacs-lisp/byte-opt.el
===================================================================
RCS file: /sources/emacs/emacs/lisp/emacs-lisp/byte-opt.el,v
retrieving revision 1.99
retrieving revision 1.100
diff -u -b -r1.99 -r1.100
--- emacs-lisp/byte-opt.el      23 Aug 2007 19:56:15 -0000      1.99
+++ emacs-lisp/byte-opt.el      24 Aug 2007 14:39:25 -0000      1.100
@@ -1020,7 +1020,9 @@
   ;; (if <test> nil <else...>) ==> (if (not <test>) (progn <else...>))
   ;; (if <test> <then> nil) ==> (if <test> <then>)
   (let ((clause (nth 1 form)))
-    (cond ((eq (car clause) 'progn)
+    (cond ((and (eq (car-safe clause) 'progn)
+                ;; `clause' is a proper list.
+                (null (cdr (last clause))))
            (if (null (cddr clause))
                ;; A trivial `progn'.
                (byte-optimize-if `(if ,(cadr clause) ,@(nthcdr 2 form)))




reply via email to

[Prev in Thread] Current Thread [Next in Thread]