Skip to content

Make three tests that fail only on a Windows host hold there - #3712

Merged
tamnd merged 2 commits into
mainfrom
tests/windows-paths
Oct 17, 2026
Merged

tamnd merged 2 commits into
mainfrom
tests/windows-paths

Conversation

@tamnd

@tamnd tamnd commented Oct 16, 2026

Copy link
Copy Markdown
Owner

"test on windows x86-64" has failed on main for a while with 8 failing tests in three places. None of them is a bug in the compiler, each is a test that asks something a Windows host answers differently.

command::tests::the_line_the_driver_writes_for_wasip1_parses in rucc-wasm-link and link::tests::a_gcc_named_with_gcc_toolchain_is_the_one_the_link_uses in rucc-driver compared paths as strings. On Windows a file found under a -L directory, and the GCC version directory, are joined with a \, so /s/lib\libm.a did not equal /s/lib/libm.a. Both now compare paths, which treat either separator the same on Windows and change nothing elsewhere.

Six lane checks in crates/rucc/tests/wasm_simd_lanes.rs first build and run the program on the host. The Windows host is x86_64-windows-gnu and the test job fetches no sysroot for it, so the link stopped with "there is no sysroot". The host levels are now a constant that is empty on Windows, decided when the test is compiled as assembler_input.rs does, so a Linux or macOS run cannot quietly stop asserting. The wasm half is gated on WASI_SDK_PATH and wasmtime as before.

On the Linux box the changed tests pass (the rucc-wasm-link command tests, the 88 link tests and all 22 in wasm_simd_lanes) and clippy is clean. The Windows box was not reachable, so the Windows run is what CI says.

Two compared paths as strings, so a path joined with a backslash on Windows did not match the one the test wrote with slashes. They now compare paths. Six lane checks in wasm_simd_lanes first linked a program for the host, and a Windows host has no sysroot for x86_64-windows-gnu in the test job, so they skip the host half on Windows, decided when the test is compiled.
@tamnd tamnd added kind/bug Crash, wrong diagnostic, or a valid program rejected area/windows Windows as a host and as a target area/testing The corpus, the fuzzers, the target ladder, and CI labels Oct 16, 2026
@tamnd
tamnd merged commit 0a02da6 into main Oct 17, 2026
41 checks passed
@tamnd
tamnd deleted the tests/windows-paths branch October 17, 2026 02:07
@tamnd tamnd mentioned this pull request Oct 17, 2026
4 of 13 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area/testing The corpus, the fuzzers, the target ladder, and CI area/windows Windows as a host and as a target kind/bug Crash, wrong diagnostic, or a valid program rejected

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant