aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRichard M. Stallman1994-03-05 23:27:51 +0000
committerRichard M. Stallman1994-03-05 23:27:51 +0000
commitb3bbaa663d44593afd9fc96d128e1b48613b8eb4 (patch)
tree6d29a0c62e71e4dfa9adad41198e892b211dc261
parent846d69ac6356a3e1c9fecc465191f646def32377 (diff)
downloademacs-b3bbaa663d44593afd9fc96d128e1b48613b8eb4.tar.gz
emacs-b3bbaa663d44593afd9fc96d128e1b48613b8eb4.zip
(byte-compile-track-mouse): Handle >1 body form.
Generate code that binds track-mouse.
-rw-r--r--lisp/emacs-lisp/bytecomp.el12
1 files changed, 5 insertions, 7 deletions
diff --git a/lisp/emacs-lisp/bytecomp.el b/lisp/emacs-lisp/bytecomp.el
index 146fb204b02..437c5da3340 100644
--- a/lisp/emacs-lisp/bytecomp.el
+++ b/lisp/emacs-lisp/bytecomp.el
@@ -2689,13 +2689,11 @@ If FORM is a lambda or a macro, byte-compile it as a function."
2689 (byte-compile-out 'byte-unbind 1)) 2689 (byte-compile-out 'byte-unbind 1))
2690 2690
2691(defun byte-compile-track-mouse (form) 2691(defun byte-compile-track-mouse (form)
2692 (byte-compile-form 2692 (let ((byte-compile-bound-variables byte-compile-bound-variables))
2693 (list 2693 (byte-compile-push-constant t)
2694 'funcall 2694 (byte-compile-variable-ref 'byte-varbind 'track-mouse)
2695 (list 'quote 2695 (byte-compile-body-do-effect (cdr form))
2696 (list 'lambda nil 2696 (byte-compile-out 'byte-unbind 1)))
2697 (list 'track-mouse
2698 (byte-compile-top-level (nth 1 form))))))))
2699 2697
2700(defun byte-compile-condition-case (form) 2698(defun byte-compile-condition-case (form)
2701 (let* ((var (nth 1 form)) 2699 (let* ((var (nth 1 form))