Subject: bug#63288: 30.0.50; Emacs 30 packages fail to build with native comp on some machines

From: Andrea Corallo <[email-masked]>
Date: Wed, 10 May 2023 10:01:24 +0000

Mattias Engdegård <[email-masked]> writes:

>>> In https://github.com/nix-community/emacs-overlay/issues/318, we
>>> received a report about failed external-package builds when using
>>> Nix, which has some additional plumbing including
>>> https://github.com/nixos/nixpkgs/blob/abcc3146aeb06b8d2ded75bddac3a63544a6be7e/pkgs/build-support/emacs/melpa2nix.el#L26-L32.
>>> 
>>> It was observed that reverting
>>> https://git.savannah.gnu.org/cgit/emacs.git/commit/?id=ea9831bb3cb4878273f6f848051c9b8c3c76d5f1
>>> would resolve our issue.
>>> 
>>> On my own machine, I don't always encounter the build failure (happened
>>> to me once a few weeks ago, and then again today).
>
> That's remarkable -- not only is it difficult to see anything wrong
> with that change (ea9831bb3c), it actually reverts byte-code
> generation for `ignore` forms in general so that the bytecode
> generated for `package-read-from-string` on master is again identical
> to that on emacs-29.
>
> Andrea, does the native compiler somehow miscompile package-read-from-string?

Hi, (sorry for being late) not that I'm aware!  But in this case the
failer should be deterministic no?

> Since the failure appears to be nondeterministic, perhaps there is a native-comp build race involved?

Mmmh, or maybe related to the presence or not of some eln?

Best Regards

  Andrea