The byte compiler prints macro declarations without quoting. E.g. defun-cvs-mode; the definition in pcvs.el looks like this:
(defmacro defun-cvs-mode (fun args docstring interact &rest body) [...] (declare (debug (&define sexp lambda-list stringp ("interactive" interactive) def-body))) [...] Note the quotes around `interactive'. However, the edebug-form-spec loaded from pcvs.*elc* lacks the quotes: (require 'pcvs) (get 'defun-cvs-mode 'edebug-form-spec) => (&define sexp lambda-list stringp (interactive interactive) def-body) This breaks edebugging. Here's a fix. 2007-03-15 Johan Bockgård <[EMAIL PROTECTED]> * emacs-lisp/bytecomp.el (byte-compile-file-form-defmumble): Use prin1 instead of princ. --- bytecomp.el 12 Mar 2007 11:11:14 +0100 2.195 +++ bytecomp.el 15 Mar 2007 15:20:38 +0100 @@ -2341,7 +2341,7 @@ (eq (car (car (cdr tail))) 'declare)) (let ((declaration (car (cdr tail)))) (setcdr tail (cdr (cdr tail))) - (princ `(if macro-declaration-function + (prin1 `(if macro-declaration-function (funcall macro-declaration-function ',name ',declaration)) outbuffer))))) -- Johan Bockgård _______________________________________________ emacs-pretest-bug mailing list emacs-pretest-bug@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-pretest-bug