GNU bug report logs - #78995
[PATCH] ;;;autoload-expand for special macros

Previous Next

Package: emacs;

Reported by: JD Smith <jdtsmith <at> gmail.com>

Date: Fri, 11 Jul 2025 19:29:02 UTC

Severity: normal

Tags: patch

Fixed in version 31

Done: "J.D. Smith" <jdtsmith <at> gmail.com>

Full log


View this message in rfc822 format

From: "J.D. Smith" <jdtsmith <at> gmail.com>
To: Michael Albinus <michael.albinus <at> gmx.de>
Cc: 78995 <at> debbugs.gnu.org, Stefan Monnier <monnier <at> iro.umontreal.ca>
Subject: bug#78995: [PATCH] ;;;autoload-expand for special macros
Date: Sun, 10 Aug 2025 17:41:37 -0400
[Message part 1 (text/plain, inline)]
"J.D. Smith" <jdtsmith <at> gmail.com> writes:

> Michael Albinus <michael.albinus <at> gmx.de> writes:
>
>> "J.D. Smith" <jdtsmith <at> gmail.com> writes:
>>
>> Hi,
>>
>>> Hmm, I guess `loaddefs-gen' was introduced in emacs 29.  But I think you
>>> don't actually need that `require' at all.  Maybe try a simple:
>>>
>>>     (unless (alist-get 'autoload-macro macro-declarations-alist)
>>>       (push '(autoload-macro ignore) macro-declarations-alist))
>>
>> That works with Emacs 28, if I put these lines before the
>> tramp--with-startup macro declaration.
>>
>> I cannot test with the master branch, because the autoload-macro patch
>> doesn't seem to be there yet.
>
> Great.  I will push it soon and then you can test, or feel free to try
> this patch in the meantime.

Here's an updated patch to try with TRAMP, to see if it works as
expected in both old and new Emacs versions.  Note that there are many
places where TRAMP does something more advanced, like:

  ;;;###tramp-autoload
  (when (featurep 'dbusbind)
    (tramp--with-startup
     (dolist (method tramp-gvfs-methods)
     ...

so I think you'll need to keep autoloading the macro definition too.

[tramp-autoload-macro-expand.patch (text/x-patch, attachment)]

This bug report was last modified 27 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.