Subject: Re: bug#77348: 30.1; cl-labels

From: Michael Heerdegen <[email-masked]>
Date: Sun, 30 Mar 2025 06:14:49 +0200

Hello Devon,

> Instrument the following forms for edebug,
> e.g., by C-u M-x eval-defun RET
> with point on the form.
>
> (cl-labels ((foo (bar))))
> ;; (error "Eager macro-expansion failure: (error \"Invalid argument
>    name: 1\")")
>
> ;; should work same as
> (cl-labels ((foo (bar) nil)))
> ;; nil after manually stepping

I see a different behavior in master, and I know the edebug spec of
`cl-labels' had been changed recently.  Are you maybe able to try the
master behavior?

@Stefan: did you forget to mention the (FUNC EXP) binding definition
case in the docstring of `cl-labels'?

> P.S.  Especially troubling is this variation which fails to manifest
> the bug:
>
> (cl-labels ((foo (function))))

You are aware that `function' is a special form?

Michael.