Subject: Re: bug#46256: [feature/native-comp] AOT eln files ignored if run from build tree

From: Eli Zaretskii <[email-masked]>
Date: Wed, 03 Mar 2021 22:04:36 +0200

> Date: Wed, 03 Mar 2021 21:46:44 +0200
> From: Eli Zaretskii <[email-masked]>
> Cc: [email-masked], [email-masked]
> 
> >   emacs_abort at src/w32fns.c:10947
> >   terminate_due_to_signal at src/emacs.c:417
> >   die at src/alloc.c:7452
> >   XNATIVE_COMP_UNIT at src/comp.h:70
> >   load_comp_unit at src/comp.c:4766
> >   syms_of_comp at src/comp.c:5077
> >   Fload at src/lread.c:1548
> 
> It looks like these crashes are when compiling subr-x, because I see
> zero-sized subr-x-XXXXX.eln.tmp files in the eln-cache directory.

Yes:

  (gdb) r -batch -l comp -f batch-native-compile ../lisp/emacs-lisp/subr-x.el
  Starting program: D:\gnu\git\emacs\native-comp\src\emacs.exe -batch -l comp -f batch-native-compile ../lisp/emacs-lisp/subr-x.el
  warning: Enabling Low Fragmentation Heap failed: error 31
  [New Thread 14244.0x320c]
  [New Thread 14244.0x3540]
  [Thread 14244.0x3540 exited with code 1]
  Debugger entered--Lisp error: (native-compiler-error "../lisp/emacs-lisp/subr-x.el" "\nException 0xc0000005 at this address:\n07cdac3e\n\nB...")
    signal(native-compiler-error ("../lisp/emacs-lisp/subr-x.el" "\nException 0xc0000005 at this address:\n07cdac3e\n\nB..."))
    comp--native-compile("../lisp/emacs-lisp/subr-x.el")
    batch-native-compile()
    command-line-1(("-l" "comp" "-f" "batch-native-compile" "../lisp/emacs-lisp/subr-x.el"))
    command-line()
    normal-top-level()

So the async compilation process crashes with SIGSEGV when compiling
subr-x.el.

Andrea, can you help me figure out the command line with which the
async compilation subprocess is invoked in this case?  I'd like to run
it as a foreground process under a debugger, and see why it crashes.

Thanks.