GNU bug report logs -
#78818
31.0.50; Missing lexical-binding cookies when compiling trampolines
Previous Next
To reply to this bug, email your comments to 78818 AT debbugs.gnu.org.
Toggle the display of automated, internal messages from the tracker.
Report forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#78818
; Package
emacs
.
(Tue, 17 Jun 2025 18:39:02 GMT)
Full text and
rfc822 format available.
Acknowledgement sent
to
Daniel Mendler <mail <at> daniel-mendler.de>
:
New bug report received and forwarded. Copy sent to
bug-gnu-emacs <at> gnu.org
.
(Tue, 17 Jun 2025 18:39:02 GMT)
Full text and
rfc822 format available.
Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
In the *Native-compile-Log* I see the following messages on a newly
compiled Emacs 31 from the current Emacs master branch:
Warning (files): Missing ‘lexical-binding’ cookie in "/tmp/emacs-int-comp-subr--trampoline-72756e2d686f6f6b73_run_hooks_0-ZQkOM2.el".
You can add one with ‘M-x elisp-enable-lexical-binding RET’.
See ‘(elisp)Selecting Lisp Dialect’ and ‘(elisp)Converting to Lexical Binding’
for more information.
Compiling $HOME/.config/emacs/eln-cache/31.0.50-45ab2aa9/subr--trampoline-72756e2d686f6f6b73_run_hooks_0.eln...
In GNU Emacs 31.0.50 (build 1, x86_64-pc-linux-gnu, GTK+ Version
3.24.49, cairo version 1.18.4) of 2025-06-17 built on host
Windowing system distributor 'The X.Org Foundation', version 11.0.12101016
System Description: Debian GNU/Linux 13 (trixie)
Configured using:
'configure --prefix=$HOME/.local/share/emacs
--without-compress-install --with-tree-sitter --with-native-compilation
--with-dbus --without-selinux --without-threads --disable-gc-mark-trace
--without-gsettings --without-gpm --with-cairo --with-cairo-xcb
--with-xinput2 --with-x-toolkit=gtk3 --without-toolkit-scroll-bars'
Configured features:
CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS HARFBUZZ JPEG LIBOTF LIBSYSTEMD
LIBXML2 MODULES NATIVE_COMP NOTIFY INOTIFY PDUMPER PNG RSVG SECCOMP
SOUND SQLITE3 TIFF TREE_SITTER WEBP X11 XDBE XIM XINERAMA XINPUT2 XPM
XRANDR GTK3 ZLIB
Important settings:
value of $LANG: en_US.UTF-8
locale-coding-system: utf-8-unix
Major mode: LIMPLE
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#78818
; Package
emacs
.
(Wed, 18 Jun 2025 11:42:02 GMT)
Full text and
rfc822 format available.
Message #8 received at 78818 <at> debbugs.gnu.org (full text, mbox):
> Date: Tue, 17 Jun 2025 20:38:20 +0200
> From: Daniel Mendler via "Bug reports for GNU Emacs,
> the Swiss army knife of text editors" <bug-gnu-emacs <at> gnu.org>
>
> In the *Native-compile-Log* I see the following messages on a newly
> compiled Emacs 31 from the current Emacs master branch:
>
> Warning (files): Missing ‘lexical-binding’ cookie in "/tmp/emacs-int-comp-subr--trampoline-72756e2d686f6f6b73_run_hooks_0-ZQkOM2.el".
> You can add one with ‘M-x elisp-enable-lexical-binding RET’.
> See ‘(elisp)Selecting Lisp Dialect’ and ‘(elisp)Converting to Lexical Binding’
> for more information.
> Compiling $HOME/.config/emacs/eln-cache/31.0.50-45ab2aa9/subr--trampoline-72756e2d686f6f6b73_run_hooks_0.eln...
Please show a recipe to reproduce this problem starting from "emacs -Q".
Or at least figure out and tell here compilation of what ELisp file
triggered this message (it sounds like it's part of your init
configuration?). I started "emacs -Q", but didn't see any such
messages that I could use as a starting point for investigation.
Or, if I'm missing something, could you suggest how to investigate
this given the information you provided above?
Thanks.
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#78818
; Package
emacs
.
(Wed, 18 Jun 2025 11:53:01 GMT)
Full text and
rfc822 format available.
Message #11 received at 78818 <at> debbugs.gnu.org (full text, mbox):
Eli Zaretskii <eliz <at> gnu.org> writes:
>> Date: Tue, 17 Jun 2025 20:38:20 +0200
>> From: Daniel Mendler via "Bug reports for GNU Emacs,
>> the Swiss army knife of text editors" <bug-gnu-emacs <at> gnu.org>
>>
>> In the *Native-compile-Log* I see the following messages on a newly
>> compiled Emacs 31 from the current Emacs master branch:
>>
>> Warning (files): Missing ‘lexical-binding’ cookie in "/tmp/emacs-int-comp-subr--trampoline-72756e2d686f6f6b73_run_hooks_0-ZQkOM2.el".
>> You can add one with ‘M-x elisp-enable-lexical-binding RET’.
>> See ‘(elisp)Selecting Lisp Dialect’ and ‘(elisp)Converting to Lexical Binding’
>> for more information.
>> Compiling $HOME/.config/emacs/eln-cache/31.0.50-45ab2aa9/subr--trampoline-72756e2d686f6f6b73_run_hooks_0.eln...
>
> Please show a recipe to reproduce this problem starting from "emacs -Q".
> Or at least figure out and tell here compilation of what ELisp file
> triggered this message (it sounds like it's part of your init
> configuration?). I started "emacs -Q", but didn't see any such
> messages that I could use as a starting point for investigation.
>
> Or, if I'm missing something, could you suggest how to investigate
> this given the information you provided above?
The trampoline .el file is generated by `comp--final' in comp.el. I
found this by grepping for `emacs-int-comp'. The generated Elisp file
doesn't include a `lexical-binding' cookie, which seems to trigger the
warning. As far as I understand the trampolines are generated if native
subrs are advised in the configuration.
Daniel
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#78818
; Package
emacs
.
(Wed, 18 Jun 2025 12:16:02 GMT)
Full text and
rfc822 format available.
Message #14 received at 78818 <at> debbugs.gnu.org (full text, mbox):
> From: Daniel Mendler <mail <at> daniel-mendler.de>
> Cc: 78818 <at> debbugs.gnu.org, Andrea Corallo <acorallo <at> gnu.org>
> Date: Wed, 18 Jun 2025 13:52:42 +0200
>
> Eli Zaretskii <eliz <at> gnu.org> writes:
>
> >> Date: Tue, 17 Jun 2025 20:38:20 +0200
> >> From: Daniel Mendler via "Bug reports for GNU Emacs,
> >> the Swiss army knife of text editors" <bug-gnu-emacs <at> gnu.org>
> >>
> >> In the *Native-compile-Log* I see the following messages on a newly
> >> compiled Emacs 31 from the current Emacs master branch:
> >>
> >> Warning (files): Missing ‘lexical-binding’ cookie in "/tmp/emacs-int-comp-subr--trampoline-72756e2d686f6f6b73_run_hooks_0-ZQkOM2.el".
> >> You can add one with ‘M-x elisp-enable-lexical-binding RET’.
> >> See ‘(elisp)Selecting Lisp Dialect’ and ‘(elisp)Converting to Lexical Binding’
> >> for more information.
> >> Compiling $HOME/.config/emacs/eln-cache/31.0.50-45ab2aa9/subr--trampoline-72756e2d686f6f6b73_run_hooks_0.eln...
> >
> > Please show a recipe to reproduce this problem starting from "emacs -Q".
> > Or at least figure out and tell here compilation of what ELisp file
> > triggered this message (it sounds like it's part of your init
> > configuration?). I started "emacs -Q", but didn't see any such
> > messages that I could use as a starting point for investigation.
> >
> > Or, if I'm missing something, could you suggest how to investigate
> > this given the information you provided above?
>
> The trampoline .el file is generated by `comp--final' in comp.el. I
> found this by grepping for `emacs-int-comp'. The generated Elisp file
> doesn't include a `lexical-binding' cookie, which seems to trigger the
> warning. As far as I understand the trampolines are generated if native
> subrs are advised in the configuration.
Thanks. We insert the lexical-binding cookie in
comp--run-async-workers, but maybe trampoline compilation doesn't use
that?
Andrea, any suggestions?
This bug report was last modified 1 day ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.