Mercurial > emacs
changeset 54790:12b895a7fee2
(byte-compile-cond): Fix last change.
author | Stefan Monnier <monnier@iro.umontreal.ca> |
---|---|
date | Mon, 12 Apr 2004 03:11:10 +0000 |
parents | 9d1d7f062a4f |
children | 04bb18c57fc6 |
files | lisp/emacs-lisp/bytecomp.el |
diffstat | 1 files changed, 7 insertions(+), 6 deletions(-) [+] |
line wrap: on
line diff
--- a/lisp/emacs-lisp/bytecomp.el Mon Apr 12 01:58:43 2004 +0000 +++ b/lisp/emacs-lisp/bytecomp.el Mon Apr 12 03:11:10 2004 +0000 @@ -3377,12 +3377,13 @@ (byte-compile-goto 'byte-goto donetag) (byte-compile-out-tag nexttag))))) ;; Last clause - (and (cdr clause) (not (eq (car clause) t)) - (progn (byte-compile-maybe-guarded (car clause) - (byte-compile-form (car clause))) - (byte-compile-goto-if nil for-effect donetag) - (setq clause (cdr clause)))) - (byte-compile-body-do-effect clause) + (let ((guard (car clause))) + (and (cdr clause) (not (eq guard t)) + (progn (byte-compile-form guard) + (byte-compile-goto-if nil for-effect donetag) + (setq clause (cdr clause)))) + (byte-compile-maybe-guarded guard + (byte-compile-body-do-effect clause))) (byte-compile-out-tag donetag))) (defun byte-compile-and (form)