zig/ci
Matthew Lugg b5ad3051f8
bootstrap: work around GCC bug
GCC bug 119085, which affects versions 13.0--15.1, is being triggered by
the C backend, resulting in a (small but critical) miscompilation in
zig2. Unfortunately, we can't really work around that bug without a
command-line flag, because the bug is sensitive to things like the order
in which `struct` types are defined.

Therefore, I have added an option to `bootstrap.c` which causes it to
pass the appropriate flag to `gcc` to disable the optimization pass in
question. This flag can likely be removed in future, once the affected
GCC versions become less common.

At least one of our x86_64-linux CI machines is using an affected GCC
version, so I also updated the relevant CI script to pass this flag when
testing no-LLVM bootstrap.

CMakeLists also has a workaround, but no user intervention is required
there: the GCC version range is automatically detected by CMakeLists.
2026-03-06 16:38:11 +00:00
..
aarch64-freebsd-debug.sh ci: add aarch64-freebsd scripts 2026-02-27 08:49:27 +01:00
aarch64-freebsd-release.sh ci: add aarch64-freebsd scripts 2026-02-27 08:49:27 +01:00
aarch64-linux-debug.sh ci: disable incremental tests 2026-01-21 17:21:05 +01:00
aarch64-linux-release.sh ci: disable incremental tests 2026-01-21 17:21:05 +01:00
aarch64-macos-debug.sh ci: disable incremental tests 2026-01-21 17:21:05 +01:00
aarch64-macos-release.sh ci: disable incremental tests 2026-01-21 17:21:05 +01:00
aarch64-netbsd-debug.sh ci: add aarch64-netbsd scripts 2026-03-02 15:08:37 +01:00
aarch64-netbsd-release.sh ci: add aarch64-netbsd scripts 2026-03-02 15:08:37 +01:00
aarch64-windows.ps1 ci: disable incremental tests 2026-01-21 17:21:05 +01:00
loongarch64-linux-debug.sh ci: disable incremental tests 2026-01-21 17:21:05 +01:00
loongarch64-linux-release.sh ci: disable incremental tests 2026-01-21 17:21:05 +01:00
powerpc64le-linux-debug.sh ci: disable incremental tests 2026-01-21 17:21:05 +01:00
powerpc64le-linux-release.sh ci: disable incremental tests 2026-01-21 17:21:05 +01:00
riscv64-linux-debug.sh ci: cut down the amount of stuff being run on riscv64-linux 2026-01-12 18:35:49 +01:00
riscv64-linux-release.sh ci: cut down the amount of stuff being run on riscv64-linux 2026-01-12 18:35:49 +01:00
s390x-linux-debug.sh ci: disable incremental tests 2026-01-21 17:21:05 +01:00
s390x-linux-release.sh ci: disable incremental tests 2026-01-21 17:21:05 +01:00
x86_64-freebsd-debug.sh ci: disable incremental tests 2026-01-21 17:21:05 +01:00
x86_64-freebsd-release.sh ci: disable incremental tests 2026-01-21 17:21:05 +01:00
x86_64-linux-debug-llvm.sh ci: update to wasmtime 42.0.1 2026-03-04 21:29:48 +01:00
x86_64-linux-debug.sh ci: update to wasmtime 42.0.1 2026-03-04 21:29:48 +01:00
x86_64-linux-release.sh bootstrap: work around GCC bug 2026-03-06 16:38:11 +00:00
x86_64-netbsd-debug.sh ci: disable incremental tests 2026-01-21 17:21:05 +01:00
x86_64-netbsd-release.sh ci: disable incremental tests 2026-01-21 17:21:05 +01:00
x86_64-openbsd-debug.sh ci: disable incremental tests 2026-01-21 17:21:05 +01:00
x86_64-openbsd-release.sh ci: disable incremental tests 2026-01-21 17:21:05 +01:00
x86_64-windows-debug.ps1 ci: stop downloading tarballs on x86_64-windows 2026-03-03 23:28:01 +01:00
x86_64-windows-release.ps1 ci: stop downloading tarballs on x86_64-windows 2026-03-03 23:28:01 +01:00