[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: The `defmacro*' macro in `cl-macs' does not recognize `declare' form
From: |
Johan Bockgård |
Subject: |
Re: The `defmacro*' macro in `cl-macs' does not recognize `declare' forms |
Date: |
Fri, 29 Apr 2005 15:36:28 +0200 |
User-agent: |
Gnus/5.110003 (No Gnus v0.3) Emacs/22.0.50 (gnu/linux) |
address@hidden (Johan Bockgård) writes:
> The `defmacro*' macro in `cl-macs' does not recognize `declare' forms.
> (macroexpand '(defmacro* foo () (declare (indent 1)) nil))
> =>
> (defmacro foo nil (block foo (declare (indent 1)) nil))
And i believe this fixes it:
--- cl-macs.el 29 Mar 2005 22:25:54 +0200 1.48
+++ cl-macs.el 29 Apr 2005 15:26:30 +0200
@@ -233,7 +233,8 @@
(bind-defs nil) (bind-enquote nil)
(bind-inits nil) (bind-lets nil) (bind-forms nil)
(header nil) (simple-args nil))
- (while (or (stringp (car body)) (eq (car-safe (car body)) 'interactive))
+ (while (or (stringp (car body))
+ (memq (car-safe (car body)) '(interactive declare)))
(push (pop body) header))
(setq args (if (listp args) (copy-list args) (list '&rest args)))
(let ((p (last args))) (if (cdr p) (setcdr p (list '&rest (cdr p)))))
--
Johan Bockgård