Subject: Re: bug#73722: 30.0.91; error calling eshell/clear with no argument

From: Jim Porter <[email-masked]>
Date: Tue, 15 Oct 2024 14:31:21 -0700

On 10/15/2024 11:04 AM, Eli Zaretskii wrote:
>> Eli, does this look ok for the release branch? It fixes a regression
>> from Emacs 29 and adds a pair of regression tests to prevent future
>> breakage. (If and when this merges, I'll see about a more-thorough fix
>> for the master branch too.)
> 
> If the problem is with empty body of progn, why does the fix have to
> be so much less self-evident?  Can you fix it by protecting against
> empty body of progn instead, so that the fix is less likely to cause
> unintended consequences?

That's just the loudest part of the bug. Even though I've already fixed 
that part on Emacs 31, things still don't work correctly there. If you 
run the "clear" command in Eshell it clears the screen, but then prints 
two new prompts on the same line together. However, this behavior is 
pretty close to what "clear" did in Emacs 29: it prints two prompts (but 
there's a newline between them).

If I fix the empty 'progn' case, I guess that would fix the regression 
(aside from the missing newline, which I'm not sure how to fix). 
However, "clear" still wouldn't work correctly.

What do you think would be better for Emacs 30? Fix "clear" so it works 
properly, or just fix the new regression? (In the latter case, I can fix 
it with a one-liner.)