aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEli Zaretskii2005-05-07 15:46:21 +0000
committerEli Zaretskii2005-05-07 15:46:21 +0000
commita5ad278d7512fe43201d214cbc2a534d93d5dc82 (patch)
treed3d40cbf8b0a2834f12e8dabf05998401656f240
parent561bd1a1e45dced69df6a7219e2b0674f3b51187 (diff)
downloademacs-a5ad278d7512fe43201d214cbc2a534d93d5dc82.tar.gz
emacs-a5ad278d7512fe43201d214cbc2a534d93d5dc82.zip
(cl-transform-lambda): Recognize `declare' as well as `interactive',
so that defmacro* would recognize `declare' forms.
-rw-r--r--lisp/ChangeLog6
-rw-r--r--lisp/emacs-lisp/cl-macs.el3
2 files changed, 8 insertions, 1 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index da4e1c89976..fcf570a3413 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,9 @@
12005-05-07 Johan Bockg,Ae(Brd <bojohan@dd.chalmers.se>
2
3 * emacs-lisp/cl-macs.el (cl-transform-lambda): Recognize `declare'
4 as well as `interactive', so that defmacro* would recognize
5 `declare' forms.
6
12005-05-07 Eli Zaretskii <eliz@gnu.org> 72005-05-07 Eli Zaretskii <eliz@gnu.org>
2 8
3 * emacs-lisp/easy-mmode.el (easy-mmode-pretty-mode-name): Explain 9 * emacs-lisp/easy-mmode.el (easy-mmode-pretty-mode-name): Explain
diff --git a/lisp/emacs-lisp/cl-macs.el b/lisp/emacs-lisp/cl-macs.el
index 4a46801763a..aae2fd9f3d8 100644
--- a/lisp/emacs-lisp/cl-macs.el
+++ b/lisp/emacs-lisp/cl-macs.el
@@ -233,7 +233,8 @@ ARGLIST allows full Common Lisp conventions."
233 (bind-defs nil) (bind-enquote nil) 233 (bind-defs nil) (bind-enquote nil)
234 (bind-inits nil) (bind-lets nil) (bind-forms nil) 234 (bind-inits nil) (bind-lets nil) (bind-forms nil)
235 (header nil) (simple-args nil)) 235 (header nil) (simple-args nil))
236 (while (or (stringp (car body)) (eq (car-safe (car body)) 'interactive)) 236 (while (or (stringp (car body))
237 (memq (car-safe (car body)) '(interactive declare)))
237 (push (pop body) header)) 238 (push (pop body) header))
238 (setq args (if (listp args) (copy-list args) (list '&rest args))) 239 (setq args (if (listp args) (copy-list args) (list '&rest args)))
239 (let ((p (last args))) (if (cdr p) (setcdr p (list '&rest (cdr p))))) 240 (let ((p (last args))) (if (cdr p) (setcdr p (list '&rest (cdr p)))))