Subject: bug#71537: 30.0.50; [PATCH] missing autoload cookies

From: Gerard Vermeulen <[email-masked]>
Date: Fri, 14 Jun 2024 08:29:01 +0000

On 14.06.2024 08:43, Eli Zaretskii wrote:
>> Date: Thu, 13 Jun 2024 20:57:50 +0000
>> From: Gerard Vermeulen <[email-masked]>
>> Cc: [email-masked]
>> 
>> > Thanks, but I don't understand why what we have now constitutes a
>> > problem.  help-fns loads shortdoc when it needs it, and
>> > pulse-momentary-highlight-one-line is autoloaded already (you don't
>> > need to auto-load variables to assign values to them).
>> >
>> > Can you describe the problems you have if you delete those 'require's
>> > from your init file, and explain why manually requiring them is a
>> > problem?
>> 
>> I try: after deleting those require's:
>> 
>> 1. and after doing "M-x describe-function shortdoc" before shortdoc 
>> has
>> been
>>      (auto)loaded by something else, I get in my message window:
>> 
>>      help-fns--run-describe-functions: Symbol’s function definition is
>> void: shortdoc-help-fns-examples-function
>> 
>>      and the help window does not show (is not created).
> 
> I cannot reproduce this.  For me, the *Help* buffer is displayed
> without any error message.  Are you using the latest master branch of
> the Emacs Git repository?  Is this in "emacs -Q"?

It works in "emacs -Q" in yesterday's master branch.

In the process, I figured out what was the issue in my init.el:

shortdoc-help-fns-examples-function was the first item in
the help-fns-describe-function-functions list and this needs the 
require.

After moving shortdoc-help-fns-examples-function after all 
help-fns--XXXX
functions in the list, everything works fine without the require.

> 
>> 2. and after calling "other-window" flash-line-around-point gets 
>> called,
>>      but I get in my message window:
>> 
>>      byte-code: Defining as dynamic an already lexical var:
>> pulse-iterations
> 
> You should use setq (or setopt) instead of let-binding.  These two
> variables are user options, so let-binding them is not appropriate.

Indeed, it works with setq.

Thanks a lot. You can close the bug, as far as I am concerned.