Subject: bug#56459: 29.0.50; Edebug disables Eldoc

From: Eli Zaretskii <[email-masked]>
Date: Wed, 01 Mar 2023 20:42:35 +0200

> From: João Távora <[email-masked]>
> Date: Wed, 1 Mar 2023 18:25:04 +0000
> Cc: Dmitry Gutov <[email-masked]>, Max Brieiev <[email-masked]>, 
> 	Lars Ingebrigtsen <[email-masked]>, [email-masked], [email-masked]
> 
> I think there's a decent place in eldoc.el to do this check, though we should take care not to require
> edebug.el in eldoc.el.
> 
> I'll look at it later, but I think if one searches for the phrase "check if we have permission to mess with the
> echo area at all", or something to that effect, one would see it.

The condition which was misfiring is in
eldoc-display-message-no-interference-p, which is called by that
place.  So the problem is not _where_ to make the test, the problem is
what should the test be to avoid overwriting Edebug evaluation results
with ElDoc stuff.  I couldn't find an indication we could depend on to
distinguish stepping through Lisp from typing in the buffer popped by
'E', for example.  Every test I tried either succeeded in both cases
or failed in both cases.

Of course, I'm nowhere near being an expert on Edebug's internals, so
I might be missing something.