* lisp/emacs-lisp/byte-run.el (compiler-macro): Make it Edebuggable

* lisp/emacs-lisp/gv.el (gc-expander, gv-setter): Reuse the spec of
`compiler-macro`.
This commit is contained in:
Stefan Monnier 2021-02-14 22:56:08 -05:00
parent 2594162b23
commit 623e534e49
2 changed files with 6 additions and 1 deletions

View 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))

View 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))