GNU bug report logs -
#76573
30.1; native compilation fails for record inside function
Previous Next
Reported by: Lin Jian <me <at> linj.tech>
Date: Tue, 25 Feb 2025 23:29:02 UTC
Severity: normal
Found in version 30.1
Done: Andrea Corallo <acorallo <at> gnu.org>
Bug is archived. No further changes may be made.
Full log
Message #8 received at 76573 <at> debbugs.gnu.org (full text, mbox):
Andrea, could you please look into this?
> Cc: Andrea Corallo <acorallo <at> gnu.org>
> Date: Wed, 26 Feb 2025 07:28:31 +0800
> From: Lin Jian via "Bug reports for GNU Emacs,
> the Swiss army knife of text editors" <bug-gnu-emacs <at> gnu.org>
>
>
> Run the following shell command and you see the error.
>
> > emacs -Q --batch --eval="(native-compile (defun foo-f () (record 'foo-r)))"
> Error: error (foo-f "Type foo-r missing from typeof-types!")
> signal(error (foo-f "Type foo-r missing from typeof-types!"))
> comp--native-compile(foo-f nil nil)
> native-compile(foo-f)
> eval((native-compile (defun foo-f nil (record 'foo-r))) t)
> command-line-1(("--eval=(native-compile (defun foo-f () (record 'foo-r)))"))
> command-line()
> normal-top-level()
> peculiar error: "Type foo-r missing from typeof-types!"
>
> If you set `native-comp-speed' to -1, 0 or 1, there is no error.
> > emacs -Q --batch --eval="(setopt native-comp-speed 1)" --eval="(native-compile (defun foo-f () (record 'foo-r)))"
>
> Emacs 30.0.93 and 30.1 have this bug, while Emacs 29.4 does not.
>
> Real world elisp packages triggering this bug are emacs-aio[1] and
> el-easydraw[2].
>
> [1]: https://github.com/skeeto/emacs-aio/issues/31
> [2]: https://github.com/misohena/el-easydraw/blob/f6b0f43138693b73cb65327d28bd2a4ee1b6caa7/edraw-path.el
>
>
>
>
This bug report was last modified 2 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.