Subject: bug#40992: 27.0.90; Evaluating a function while using edebug breaks

From: Alan Mackenzie <[email-masked]>
Date: Mon, 11 May 2020 20:16:30 +0000

Hello, Phillip.

On Sat, May 02, 2020 at 22:54:52 +0100, Phillip Lord wrote:
> Eli Zaretskii <[email-masked]> writes:

> >> From: Noam Postavsky <[email-masked]>
> >> Date: Fri, 01 May 2020 23:05:32 -0400
> >> Cc: Alan Mackenzie <[email-masked]>, [email-masked],
> >>  Phillip Lord <[email-masked]>

> > If this fixes the problem, it's okay for emacs-27.  But then why did
> > Alan say there was no easy solution?

> I guess it's because the edebug should really still be using the overlay
> information for the function it is still stepping through.

> When I do this, it's because I do not want the function instrumented any
> more; I'd probably be just as happy if edebug dropped out at this point
> (i.e. stopped stepping through and continued). That I can step through a
> function definition that is no longer instrumented is not really a
> feature for me.

> Not having it error, clearly, is a feature!

> Thanks all for looking at this.

I've just committed a fix to master, whereby the information in property
`edebug' is saved in property `ghost-edebug' when the function is
re-evaluated.  `ghost-edebug' is used by most of edebug in place of 
`edebug' when the latter contains a bare marker.

Modulo any bugs in this patch, I think it fixes bug #40992 completely.

> Phil

-- 
Alan Mackenzie (Nuremberg, Germany).