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

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

bug#41989: 28.0.50; Edebug doesn't generate symbols for `cl-flet' etc.


From: Philipp Stephani
Subject: bug#41989: 28.0.50; Edebug doesn't generate symbols for `cl-flet' etc.
Date: Mon, 1 Mar 2021 16:59:40 +0100

Am Mo., 1. März 2021 um 16:46 Uhr schrieb Lars Ingebrigtsen <larsi@gnus.org>:
>
> Philipp Stephani <p.stephani2@gmail.com> writes:
>
> >> Edebug (using C-u C-M-x) a function like the following:
> >>
> >> (defun bar ()
> >>   (cl-flet ((foo () 1)) (foo))
> >>   (cl-flet ((foo () 2)) (foo)))
> >>
> >> *Messages* will now contain
> >>
> >> Edebug: foo [4 times]
> >> Edebug: bar
> >>
> >> Note how `foo' has been instrumented 4 times.  A factor of 2 is due to
> >> Bug#41988; another factor of 2 is due to Edebug not generating a unique
> >> symbol.  Edebug should generate symbols such as `bar@foo@1' and
> >> `bar@foo@2' for these definitions.
> >
> > I've partially fixed this with commit d8ab98843e. It's not completely
> > fixed because Edebug doesn't yet detect the outer definition and adds
> > it to the inner symbol.
>
> I'm not quite sure what the status is here now.  I tried `C-u C-M-x'-ing
> it now and got:
>
> Edebug: foo@cl-flet@118
> Edebug: foo@cl-flet@119
> Edebug: bar
> bar
>
> Which seems correct.  And stepping through the function also works.  So
> is there more to be done here?

It would be nice to include the outer function ("bar") in the
generated symbol, e.g. "bar@foo@cl-flet@118" or similar.
But that would really be the icing on the cake, and it's not necessary
to avoid duplicate symbols. So more of a nice to have; feel free to
close this bug if it's too hard to implement.





reply via email to

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