Fix void-function' error after edebug-remove-instrumentation'

After using `edebug-remove-instrumentation' to remove Edebug
instrumentation from a command, calling that command interactively
produces a `void-function' error.  This happens because Edebug does not
unwrap the command's interactive form.

* lisp/emacs-lisp/edebug.el (edebug-unwrap*): Unwrap the interactive
form of an `interpreted-function'.  (Bug#81438)
This commit is contained in:
Roi Martin 2026-07-19 09:58:15 +02:00 committed by Stefan Monnier
parent 59f402717a
commit 810e9d675b

View file

@ -1318,7 +1318,7 @@ infinite loops when the code/environment contains a circular object.")
(aref sexp 0) (mapcar #'edebug-unwrap* (aref sexp 1))
(mapcar (lambda (x) (if (consp x) (cons (car x) (edebug-unwrap* (cdr x))) x))
(aref sexp 2))
(documentation sexp 'raw) (interactive-form sexp)))
(documentation sexp 'raw) (edebug-unwrap* (interactive-form sexp))))
(t sexp)))