Stefan Monnier <[EMAIL PROTECTED]> writes: [...]
> I'd say they should be set in the `declare' part of the definition > of the macro. See the definition of `when' or `unless' for > examples. Unless it's common to edit code that uses the macro while > the macro itself is not loaded, in which case it might be worthwhile > to put the `put' in some other file like lisp-mode.el. Actually, there is a problem with using declare to specify indentation. Some macro's like `eval-when-compile' are defined upon startup, because loadup.el loads the file in which they are defined. If (put ... 'lisp-indent-function ...) is used to specify indentation, then that is executed during startup as well. However, if (declare (indent ...)) is used to specify indentation, then the macro is defined during startup, but its lisp-indent-property will not be set. [I guess, this is why there is a (put 'when 'lisp-indent-function 1) in lisp-mode.el, even though the definition of when in subr.el uses (declare (indent 1)).] (declare (debug ...)) has the same problem wrt the edebug-form-spec property. This should probably be fixed somehow, or else documented. Lute. _______________________________________________ Emacs-devel mailing list Emacs-devel@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-devel