[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] /srv/bzr/emacs/emacs-24 r110954: * lisp/emacs-lisp/cl-macs
From: |
Stefan Monnier |
Subject: |
[Emacs-diffs] /srv/bzr/emacs/emacs-24 r110954: * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda): Add back `declare' in |
Date: |
Sat, 24 Nov 2012 16:34:28 -0500 |
User-agent: |
Bazaar (2.5.0) |
------------------------------------------------------------
revno: 110954
fixes bug: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=12977
committer: Stefan Monnier <address@hidden>
branch nick: emacs-24
timestamp: Sat 2012-11-24 16:34:28 -0500
message:
* lisp/emacs-lisp/cl-macs.el (cl--transform-lambda): Add back `declare' in
the constructs to keep outside of the `cl-block'.
modified:
lisp/ChangeLog
lisp/emacs-lisp/cl-macs.el
=== modified file 'lisp/ChangeLog'
--- a/lisp/ChangeLog 2012-11-24 08:15:00 +0000
+++ b/lisp/ChangeLog 2012-11-24 21:34:28 +0000
@@ -1,3 +1,8 @@
+2012-11-24 Stefan Monnier <address@hidden>
+
+ * emacs-lisp/cl-macs.el (cl--transform-lambda): Add back `declare' in
+ the constructs to keep outside of the `cl-block' (bug#12977).
+
2012-11-24 Chong Yidong <address@hidden>
* mouse.el (mouse-drag-line): Even if the line is not draggable,
=== modified file 'lisp/emacs-lisp/cl-macs.el'
--- a/lisp/emacs-lisp/cl-macs.el 2012-11-15 21:01:25 +0000
+++ b/lisp/emacs-lisp/cl-macs.el 2012-11-24 21:34:28 +0000
@@ -216,12 +216,17 @@
(defvar cl--bind-inits) (defvar cl--bind-lets) (defvar cl--bind-forms)
(defun cl--transform-lambda (form bind-block)
+ "Transform a function form FORM of name BIND-BLOCK.
+BIND-BLOCK is the name of the symbol to which the function will be bound,
+and which will be used for the name of the `cl-block' surrounding the
+function's body.
+FORM is of the form (ARGS . BODY)."
(let* ((args (car form)) (body (cdr form)) (orig-args args)
(cl--bind-block bind-block) (cl--bind-defs nil) (cl--bind-enquote nil)
(cl--bind-inits nil) (cl--bind-lets nil) (cl--bind-forms nil)
(header nil) (simple-args nil))
(while (or (stringp (car body))
- (memq (car-safe (car body)) '(interactive cl-declare)))
+ (memq (car-safe (car body)) '(interactive declare cl-declare)))
(push (pop body) header))
(setq args (if (listp args) (cl-copy-list args) (list '&rest args)))
(let ((p (last args))) (if (cdr p) (setcdr p (list '&rest (cdr p)))))
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Emacs-diffs] /srv/bzr/emacs/emacs-24 r110954: * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda): Add back `declare' in,
Stefan Monnier <=