bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#74368: 31.0.50; Different warnings between native-compile and native


From: Sean Devlin
Subject: bug#74368: 31.0.50; Different warnings between native-compile and native-compile-async
Date: Sat, 16 Nov 2024 14:38:08 -0500

> On Nov 16, 2024, at 2:38 AM, Eli Zaretskii <eliz@gnu.org> wrote:
> 
> tags 74368 notabug
> thanks
> 
>> From: Sean Devlin <spd@toadstyle.org>
>> Date: Fri, 15 Nov 2024 12:04:42 -0500
>> 
>> I'm not sure if this is a bug, but I noticed a difference in behavior
>> when compiling with native-compile and native-compile-async.
>> 
>> Recipe:
>> 
>> 1. mkdir /tmp/emacs-test
>> 2. printf ";; -*- lexical-binding: t; -*-\n\n(vertico-mode)\n" > 
>> /tmp/emacs-test/test.el
>> 2. HOME=/tmp/emacs-test emacs
>> 3. M-x package-install RET vertico RET
>> 4. M-: (native-compile "/tmp/emacs-test/test.el") RET
>> 5. M-! touch /tmp/emacs-test/test.el RET
>> 6. M-: (native-compile-async "/tmp/emacs-test/test.el") RET
>> 
>> There is no warning when compiling synchronously, but there is a warning
>> during asynchronous compilation:
>> 
>> test.el:3:2: Warning: the function ‘vertico-mode’ is not known to be
>> defined.
>> 
>> I guess maybe the asynchronous compiler has not processed the autoloads
>> from installed packages, whereas the synchronous compiler has.
>> 
>> Is this difference in behavior expected? Or is one of the compilers
>> behaving incorrectly?
> 
> This is indeed expected, and not a bug.  The asynchronous JIT
> native-compilation runs in a separate batch Emacs session, which
> doesn't load any of your init files.  To avoid these warnings, you
> should make sure all of the *.el files that are natively compiled have
> all the requisite 'require's and/or 'eval-when-compile' to load all
> the dependency libraries when compiling the file as a stand-alone Lisp
> package.

I see, that makes sense. Thanks for the explanation.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]