Subject: bug#63825: 29.0.90; The header line should be hidden when empty

From: Spencer Baugh <[email-masked]>
Date: Thu, 01 Jun 2023 13:37:18 -0400

Eshel Yaron <[email-masked]> writes:
> Eli Zaretskii <[email-masked]> writes:
>> header-line-format supports :eval and :when, so why cannot
>> which-function-mode use those to yield nil when there's nothing to
>> show?
>
> I thought so as well, but it seems that the header line is displayed
> even when the value of `header-line-format` yields nil, if it isn't
> plain nil.
>
> So this shows an empty header line:
>
> (setq-default header-line-format '(:eval nil))
>
> (In Emacs master with -Q.)

Yes, this is what I meant.  Sorry, my example was not chosen carefully.
I should have chosen an example which yielded an actually empty string
when processed by format-mode-line, such as '(:eval nil);
(format-mode-line '(:eval nil)) evaluates to "", which I think should
cause the header-line to not appear.