GNU bug report logs -
#65344
28.2; Unable to Edebug cl-flet form which uses argument destructuring
Previous Next
Reported by: Brandon Irizarry <brandon.irizarry <at> gmail.com>
Date: Wed, 16 Aug 2023 18:23:02 UTC
Severity: normal
Found in version 28.2
Fixed in version 30.1
Done: Gerd Möllmann <gerd.moellmann <at> gmail.com>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
Michael Heerdegen <michael_heerdegen <at> 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.
This bug report was last modified 1 year and 261 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.