emacs-pretest-bug
[Top][All Lists]
Advanced

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

bytecomp fix


From: Dave Love
Subject: bytecomp fix
Date: 07 Apr 2004 15:02:28 +0100
User-agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.3.50

It looks as though I cocked up testing this or sent the wrong version since

(cond ((boundp 'foo) foo)
      ((boundp 'bar) bar))

gets a warning.

2004-04-07  Dave Love  <address@hidden>

        * emacs-lisp/bytecomp.el (byte-compile-cond): Fix last change.

--- /home/fx/esrc/lisp/emacs-lisp/bytecomp.el~  2004-03-24 17:02:20.000000000 
+0000
+++ /home/fx/esrc/lisp/emacs-lisp/bytecomp.el   2004-04-06 23:39:27.000000000 
+0100
@@ -3385,12 +3389,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)






reply via email to

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