Subject: Re: bug#78995: [PATCH] ;;;autoload-expand for special macros

From: Eli Zaretskii <[email-masked]>
Date: Sat, 12 Jul 2025 09:10:05 +0300

> From: JD Smith <[email-masked]>
> Date: Fri, 11 Jul 2025 15:28:03 -0400
> 
>  (defun loaddefs-generate--make-autoload (form file &optional expansion)
>    "Turn FORM into an autoload or defvar for source file FILE.
> -Returns nil if FORM is not a special autoload form (i.e. a function definition
> -or macro definition or a defcustom).
> -If EXPANSION is non-nil, we're processing the macro expansion of an
> -expression, in which case we want to handle forms differently."
> +Returns nil if FORM is not a special autoload form (i.e. a function
> +definition or macro definition or a defcustom).  If EXPANSION is
> +non-nil, we're processing the macro expansion of an expression, in which
> +case we want to handle forms differently.  If it the symbol `force',
                                                 ^^^^^^^^^^^^^
"it is the symbol".

Also, I wonder why you decided to refill the existing text.  A doc
string is easier readable if each argument's description starts on a
new line, because then it's easier to scan the doc string if you are
looking for the description of a specific argument.

And finally, the last sentence, which you added, doesn't really
explain the effect of the special value 'force' -- can we do a better
job describing that?

> -                              (or local-outfile main-outfile))))
> +                              (or local-outfile main-outfile)))
> +		   (expansion (and (looking-at "-expand[ \t]*") 'force)))

And this part seems to be completely undocumented?