bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#65344: 28.2; Unable to Edebug cl-flet form which uses argument destr


From: Gerd Möllmann
Subject: bug#65344: 28.2; Unable to Edebug cl-flet form which uses argument destructuring
Date: Tue, 22 Aug 2023 07:48:57 +0200
User-agent: Gnus/5.13 (Gnus v5.13)

Michael Heerdegen <michael_heerdegen@web.de> writes:

> Your patch breaks this case because it changed the order in the &or:
>
> #+begin_src emacs-lisp
> (defun make-fun (n)
>   (lambda () n))
>
> (defvar k 17)
>
> (cl-flet ((a (make-fun k))) ;; `make-fun' call not instrumented
>   (a))
> #+end_src

I wonder if this isn't a bug in cl-flet itself.  If you change the names
a bit, this is 

(cl-flet ((fn (a b)))
  ...)

which is a perfectly valid local definition of FN with two parameter A
and B, returning nil in CL.  It signals an error in Emacs which I'd
consider a bug.

> Did changing the order improve anything at all?

It's more beautiful :-).

> Second question: you are sure that the
> ";Allow (setf ...) additionally to symbols." thing was not something
> Stefan wanted to keep intentionally?  Just wondering.

What makes you think so?

> This spec was
> never being used, right?

Right.  One cannot define functions with non-symbol function names, and
never could.





reply via email to

[Prev in Thread] Current Thread [Next in Thread]