]> git.eshelyaron.com Git - emacs.git/commitdiff
* lisp/emacs-lisp/byte-run.el (compiler-macro): Make it Edebuggable
authorStefan Monnier <monnier@iro.umontreal.ca>
Mon, 15 Feb 2021 03:56:08 +0000 (22:56 -0500)
committerStefan Monnier <monnier@iro.umontreal.ca>
Mon, 15 Feb 2021 04:03:04 +0000 (23:03 -0500)
* lisp/emacs-lisp/gv.el (gc-expander, gv-setter): Reuse the spec of
`compiler-macro`.

lisp/emacs-lisp/byte-run.el
lisp/emacs-lisp/gv.el

index 48a7fe80615bd1bc5d59706ade44a1add7fe1190..8a22388f1d74d7394683ab7c4be5331855bbe3f4 100644 (file)
@@ -113,6 +113,9 @@ The return value of this function is not used."
       (list 'function-put (list 'quote f)
             ''side-effect-free (list 'quote val))))
 
+(put 'compiler-macro 'edebug-declaration-spec
+     '(&or symbolp ("lambda" &define lambda-list lambda-doc def-body)))
+
 (defalias 'byte-run--set-compiler-macro
   #'(lambda (f args compiler-function)
       (if (not (eq (car-safe compiler-function) 'lambda))
index 3200b1c3494f5f80a51fd84531d0b5f5c0f0fb2f..cbbed06d7c8a36bc74f800dc023eec6ae5c67cb8 100644 (file)
@@ -188,7 +188,9 @@ arguments as NAME.  DO is a function as defined in `gv-get'."
          defun-declarations-alist))
 
 ;;;###autoload
-(let ((spec '(&or symbolp ("lambda" &define lambda-list def-body))))
+(let ((spec (get 'compiler-macro 'edebug-declaration-spec)))
+  ;; It so happens that it's the same spec for gv-* as for compiler-macros.
+  ;; '(&or symbolp ("lambda" &define lambda-list lambda-doc def-body))
   (put 'gv-expander 'edebug-declaration-spec spec)
   (put 'gv-setter 'edebug-declaration-spec spec))