1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-03-06 05:52:32 -08:00

(byte-optimize-if): Don't presume `clause' is a list.

This commit is contained in:
Stefan Monnier 2007-08-24 14:39:25 +00:00
parent ee163e6dbc
commit 9d693d807f
2 changed files with 10 additions and 3 deletions

View file

@ -1,3 +1,8 @@
2007-08-24 Stefan Monnier <monnier@iro.umontreal.ca>
* emacs-lisp/byte-opt.el (byte-optimize-if): Don't presume `clause' is
a list.
2007-08-24 Thien-Thi Nguyen <ttn@gnuvola.org>
* progmodes/hideshow.el (hs-match-data): Delete alias.
@ -39,8 +44,8 @@
2007-08-23 Masatake YAMATO <jet@gyve.org>
* progmodes/cc-fonts.el (gtkdoc-font-lock-doc-comments): Highlight
name of parameters in document body.
* progmodes/cc-fonts.el (gtkdoc-font-lock-doc-comments):
Highlight name of parameters in document body.
2007-08-23 Stefan Monnier <monnier@iro.umontreal.ca>

View file

@ -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)))