Ludovic Courtès <l...@gnu.org> skribis: > While building the “guix-system.drv” derivation on AArch64, I got this > crash (not fully deterministic but quite frequent). Here the > finalization thread gets a wrong-type-arg in ‘scm_i_weak_car’ (i.e., > accessing a one-element weak vector): > > $ ( export out=$PWD/build; unset GUILE_LOAD_PATH; unset > GUILE_LOAD_COMPILED_PATH; gdb --args > "/gnu/store/p8in2npgl5yhliy25ikz7shjbq0gii95-guile-next-3.0.0/bin/guile" > "--no-auto-compile" "-L" > "/gnu/store/3qg8l6kr4wa9sbgwy00z1mb3p88xf455-module-import" "-C" > "/gnu/store/h9qcvg71bmx735fsndagll9y7s72k9n9-module-import-compiled" > guix-system-builder ) > […] > loading 'gnu/services/cups.scm'... > Backtrace:
Apparently this bug does not occur with v3.0.0-23-g7dc90a17e¹. It may be that 00fbdfa7345765168e14438eed0b0b8c64c27ab9 reduces GC pressure, which as a side effect makes the problem vanish. It’s not satisfactory, but as a stop-gap measure, we could release 3.0.1 like this, which could make Guile 3 usable for Guix on AArch64. Thoughts? Ludo’. ¹ Specifically, I tested by (1) building a tarball with “make dist”, (2) running “guix build guile-next --with-source=guile-next=the-tarball.tar.gz”, and (3) running that Guile in the code above. For some reason, Guile 3.0.0 built “by hand” would not reproduce the original bug, which is why I built it through Guix.