2005-03-14 Lute Kamstra <lute@gnu.org>
+ * subr.el (macro-declaration-function): Move to
+ emacs-lisp/byte-run.el.
+ * emacs-lisp/byte-run.el (macro-declaration-function): Move from
+ subr.el.
+ (dont-compile, eval-when-compile, eval-and-compile): Use declare
+ to specify indentation.
+
* generic.el (define-generic-mode): Let generic-mode-list be a
list of strings; test membership with equal.
(setq custom-declare-variable-list
(cons arguments custom-declare-variable-list)))
-\f
-(defun macro-declaration-function (macro decl)
- "Process a declaration found in a macro definition.
-This is set as the value of the variable `macro-declaration-function'.
-MACRO is the name of the macro being defined.
-DECL is a list `(declare ...)' containing the declarations.
-The return value of this function is not used."
- ;; We can't use `dolist' or `cadr' yet for bootstrapping reasons.
- (let (d)
- ;; Ignore the first element of `decl' (it's always `declare').
- (while (setq decl (cdr decl))
- (setq d (car decl))
- (cond ((and (consp d) (eq (car d) 'indent))
- (put macro 'lisp-indent-function (car (cdr d))))
- ((and (consp d) (eq (car d) 'debug))
- (put macro 'edebug-form-spec (car (cdr d))))
- (t
- (message "Unknown declaration %s" d))))))
-
-(setq macro-declaration-function 'macro-declaration-function)
-
\f
;;;; Lisp language features.