Skip to content

Commit

Permalink
Rollup merge of rust-lang#134777 - saethlin:enable-more-tests-on-wind…
Browse files Browse the repository at this point in the history
…ows, r=Noratrieb

Enable more tests on Windows

As part of the discussion of rust-lang/compiler-team#822 on Zulip, it was mentioned that problems with the i686-pc-windows-gnu target may have resulted in tests being disabled on Windows.

So in this PR, I've ripped out all our `//@ ignore-windows` directives, then re-added all the ones that are definitely required based on the outcome of try-builds, and in some cases I've improved the justification or tightened the directives to `//@ ignore-msvc` or ignoring specific targets.
  • Loading branch information
matthiaskrgr authored Feb 3, 2025
2 parents 613bdd4 + 5efee2c commit b1e8099
Show file tree
Hide file tree
Showing 46 changed files with 39 additions and 63 deletions.
2 changes: 1 addition & 1 deletion tests/codegen/debug-column.rs
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
// Verify that debuginfo column numbers are 1-based byte offsets.
//
//@ ignore-windows
//@ ignore-msvc
//@ compile-flags: -C debuginfo=2

#[rustfmt::skip]
Expand Down
2 changes: 1 addition & 1 deletion tests/codegen/force-no-unwind-tables.rs
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
//@ compile-flags: -C no-prepopulate-passes -C panic=abort -C force-unwind-tables=n
//@ ignore-windows
//@ ignore-windows: unwind tables are required for panics on Windows

#![crate_type = "lib"]

Expand Down
2 changes: 1 addition & 1 deletion tests/codegen/thread-local.rs
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
//@ compile-flags: -O
//@ aux-build:thread_local_aux.rs
//@ ignore-windows FIXME(#84933)
//@ ignore-windows FIXME(#134939)
//@ ignore-wasm globals are used instead of thread locals
//@ ignore-emscripten globals are used instead of thread locals
//@ ignore-android does not use #[thread_local]
Expand Down
4 changes: 4 additions & 0 deletions tests/crashes/132981.rs
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,10 @@
//@compile-flags: -Clink-dead-code=true --crate-type lib
//@ only-x86_64
//@ ignore-windows
// The set of targets this crashes on is really fiddly, because it is deep in our ABI logic. It
// crashes on x86_64-unknown-linux-gnu, and i686-pc-windows-msvc, but not on
// x86_64-pc-windows-msvc. If you are trying to fix this crash, don't pay too much attention to the
// directives.

#![feature(rust_cold_cc)]
pub extern "rust-cold" fn foo(_: [usize; 3]) {}
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
//@ ignore-windows
//@ ignore-windows different error message
//@ revisions: edition2015 edition2024
//@[edition2015]edition:2015
//@[edition2015]check-fail
Expand Down
1 change: 0 additions & 1 deletion tests/ui-fulldeps/stable-mir/check_abi.rs
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@
//@ ignore-stage1
//@ ignore-cross-compile
//@ ignore-remote
//@ ignore-windows-gnu mingw has troubles with linking https://github.com/rust-lang/rust/pull/116837

#![feature(rustc_private)]
#![feature(assert_matches)]
Expand Down
1 change: 0 additions & 1 deletion tests/ui-fulldeps/stable-mir/check_allocation.rs
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@
//@ ignore-stage1
//@ ignore-cross-compile
//@ ignore-remote
//@ ignore-windows-gnu mingw has troubles with linking https://github.com/rust-lang/rust/pull/116837
//@ edition: 2021

#![feature(rustc_private)]
Expand Down
1 change: 0 additions & 1 deletion tests/ui-fulldeps/stable-mir/check_attribute.rs
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@
//@ ignore-stage1
//@ ignore-cross-compile
//@ ignore-remote
//@ ignore-windows-gnu mingw has troubles with linking https://github.com/rust-lang/rust/pull/116837

#![feature(rustc_private)]

Expand Down
1 change: 0 additions & 1 deletion tests/ui-fulldeps/stable-mir/check_binop.rs
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@
//@ ignore-stage1
//@ ignore-cross-compile
//@ ignore-remote
//@ ignore-windows-gnu mingw has troubles with linking https://github.com/rust-lang/rust/pull/116837

#![feature(rustc_private)]

Expand Down
1 change: 0 additions & 1 deletion tests/ui-fulldeps/stable-mir/check_crate_defs.rs
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@
//@ ignore-stage1
//@ ignore-cross-compile
//@ ignore-remote
//@ ignore-windows-gnu mingw has troubles with linking https://github.com/rust-lang/rust/pull/116837

#![feature(rustc_private)]
#![feature(assert_matches)]
Expand Down
1 change: 0 additions & 1 deletion tests/ui-fulldeps/stable-mir/check_def_ty.rs
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@
//@ ignore-stage1
//@ ignore-cross-compile
//@ ignore-remote
//@ ignore-windows-gnu mingw has troubles with linking https://github.com/rust-lang/rust/pull/116837
//@ edition: 2021

#![feature(rustc_private)]
Expand Down
1 change: 0 additions & 1 deletion tests/ui-fulldeps/stable-mir/check_defs.rs
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@
//@ ignore-stage1
//@ ignore-cross-compile
//@ ignore-remote
//@ ignore-windows-gnu mingw has troubles with linking https://github.com/rust-lang/rust/pull/116837
//@ edition: 2021

#![feature(rustc_private)]
Expand Down
1 change: 0 additions & 1 deletion tests/ui-fulldeps/stable-mir/check_foreign.rs
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@
//@ ignore-stage1
//@ ignore-cross-compile
//@ ignore-remote
//@ ignore-windows-gnu mingw has troubles with linking https://github.com/rust-lang/rust/pull/116837
//@ edition: 2021

#![feature(rustc_private)]
Expand Down
1 change: 0 additions & 1 deletion tests/ui-fulldeps/stable-mir/check_instance.rs
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@
//@ ignore-stage1
//@ ignore-cross-compile
//@ ignore-remote
//@ ignore-windows-gnu mingw has troubles with linking https://github.com/rust-lang/rust/pull/116837
//@ edition: 2021

#![feature(rustc_private)]
Expand Down
1 change: 0 additions & 1 deletion tests/ui-fulldeps/stable-mir/check_intrinsics.rs
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@
//@ ignore-stage1
//@ ignore-cross-compile
//@ ignore-remote
//@ ignore-windows-gnu mingw has troubles with linking https://github.com/rust-lang/rust/pull/116837

#![feature(rustc_private)]
#![feature(assert_matches)]
Expand Down
1 change: 0 additions & 1 deletion tests/ui-fulldeps/stable-mir/check_item_kind.rs
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@
//@ ignore-stage1
//@ ignore-cross-compile
//@ ignore-remote
//@ ignore-windows-gnu mingw has troubles with linking https://github.com/rust-lang/rust/pull/116837
//@ edition: 2021

#![feature(rustc_private)]
Expand Down
1 change: 0 additions & 1 deletion tests/ui-fulldeps/stable-mir/check_normalization.rs
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@
//@ ignore-stage1
//@ ignore-cross-compile
//@ ignore-remote
//@ ignore-windows-gnu mingw has troubles with linking https://github.com/rust-lang/rust/pull/116837
//@ edition: 2021

#![feature(rustc_private)]
Expand Down
1 change: 0 additions & 1 deletion tests/ui-fulldeps/stable-mir/check_trait_queries.rs
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@
//@ ignore-stage1
//@ ignore-cross-compile
//@ ignore-remote
//@ ignore-windows-gnu mingw has troubles with linking https://github.com/rust-lang/rust/pull/116837
//@ edition: 2021

#![feature(rustc_private)]
Expand Down
1 change: 0 additions & 1 deletion tests/ui-fulldeps/stable-mir/check_transform.rs
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@
//@ ignore-stage1
//@ ignore-cross-compile
//@ ignore-remote
//@ ignore-windows-gnu mingw has troubles with linking https://github.com/rust-lang/rust/pull/116837

#![feature(rustc_private)]
#![feature(assert_matches)]
Expand Down
1 change: 0 additions & 1 deletion tests/ui-fulldeps/stable-mir/check_ty_fold.rs
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@
//@ ignore-stage1
//@ ignore-cross-compile
//@ ignore-remote
//@ ignore-windows-gnu mingw has troubles with linking https://github.com/rust-lang/rust/pull/116837
//@ edition: 2021

#![feature(rustc_private)]
Expand Down
1 change: 0 additions & 1 deletion tests/ui-fulldeps/stable-mir/compilation-result.rs
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@
//@ ignore-stage1
//@ ignore-cross-compile
//@ ignore-remote
//@ ignore-windows-gnu mingw has troubles with linking https://github.com/rust-lang/rust/pull/116837
//@ edition: 2021

#![feature(rustc_private)]
Expand Down
1 change: 0 additions & 1 deletion tests/ui-fulldeps/stable-mir/crate-info.rs
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@
//@ ignore-stage1
//@ ignore-cross-compile
//@ ignore-remote
//@ ignore-windows-gnu mingw has troubles with linking https://github.com/rust-lang/rust/pull/116837
//@ edition: 2021

#![feature(rustc_private)]
Expand Down
1 change: 0 additions & 1 deletion tests/ui-fulldeps/stable-mir/projections.rs
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@
//@ ignore-stage1
//@ ignore-cross-compile
//@ ignore-remote
//@ ignore-windows-gnu mingw has troubles with linking https://github.com/rust-lang/rust/pull/116837
//@ edition: 2021

#![feature(rustc_private)]
Expand Down
1 change: 0 additions & 1 deletion tests/ui-fulldeps/stable-mir/smir_internal.rs
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@
//@ ignore-stage1
//@ ignore-cross-compile
//@ ignore-remote
//@ ignore-windows-gnu mingw has troubles with linking https://github.com/rust-lang/rust/pull/116837
//@ edition: 2021

#![feature(rustc_private)]
Expand Down
1 change: 0 additions & 1 deletion tests/ui-fulldeps/stable-mir/smir_serde.rs
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@
//@ ignore-stage1
//@ ignore-cross-compile
//@ ignore-remote
//@ ignore-windows-gnu mingw has troubles with linking https://github.com/rust-lang/rust/pull/116837
//@ edition: 2021

#![feature(rustc_private)]
Expand Down
1 change: 0 additions & 1 deletion tests/ui-fulldeps/stable-mir/smir_visitor.rs
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@
//@ ignore-stage1
//@ ignore-cross-compile
//@ ignore-remote
//@ ignore-windows-gnu mingw has troubles with linking https://github.com/rust-lang/rust/pull/116837
//@ edition: 2021

#![feature(rustc_private)]
Expand Down
3 changes: 2 additions & 1 deletion tests/ui/abi/abi-sysv64-arg-passing.rs
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,8 @@
//@ ignore-aarch64
//@ ignore-windows

// note: windows is ignored as rust_test_helpers does not have the sysv64 abi on windows
// Windows is ignored because bootstrap doesn't yet know to compile rust_test_helpers with
// the sysv64 ABI on Windows.

#[allow(dead_code)]
#[allow(improper_ctypes)]
Expand Down
1 change: 0 additions & 1 deletion tests/ui/abi/large-byval-align.rs
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
//@ compile-flags: -Copt-level=0
//@ only-x86_64
//@ ignore-windows
//@ min-llvm-version: 19
//@ build-pass

Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
//@ ignore-windows
//@ ignore-windows FIXME(134939): thread_local + no_mangle doesn't work on Windows
//@ aux-build:cfg-target-thread-local.rs

#![feature(thread_local)]
Expand Down
2 changes: 1 addition & 1 deletion tests/ui/inference/issue-71584.rs
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
//@ ignore-windows different list of satisfying impls
//@ ignore-windows FIXME: We get an extra E0283 on Windows
fn main() {
let n: u32 = 1;
let mut d: u64 = 2;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
//@ run-pass
//@ ignore-windows
//@ ignore-apple
//@ ignore-wasm32 common linkage not implemented right now

Expand All @@ -11,9 +10,11 @@ pub static TEST2: bool = true;
#[linkage = "internal"]
pub static TEST3: bool = true;

#[cfg(not(target_env = "msvc"))]
#[linkage = "linkonce"]
pub static TEST4: bool = true;

#[cfg(not(target_env = "msvc"))]
#[linkage = "linkonce_odr"]
pub static TEST5: bool = true;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,6 @@
// functions. Failure results in a linker error.

//@ ignore-emscripten no weak symbol support
//@ ignore-windows no extern_weak linkage
//@ ignore-apple no extern_weak linkage

//@ aux-build:lib.rs
Expand Down
1 change: 0 additions & 1 deletion tests/ui/logging-only-prints-once.rs
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
//@ run-pass
//@ ignore-windows
//@ needs-threads

use std::cell::Cell;
Expand Down
3 changes: 2 additions & 1 deletion tests/ui/lto/weak-works.rs
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
//@ run-pass

//@ compile-flags: -C codegen-units=8 -Z thinlto
//@ ignore-windows
//@ ignore-i686-pc-windows-gnu
//@ ignore-x86_64-pc-windows-gnu

#![feature(linkage)]

Expand Down
2 changes: 0 additions & 2 deletions tests/ui/parser/mod_file_not_exist.rs
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
//@ ignore-windows

mod not_a_real_file; //~ ERROR file not found for module `not_a_real_file`
//~^ HELP to create the module `not_a_real_file`, create file

Expand Down
4 changes: 2 additions & 2 deletions tests/ui/parser/mod_file_not_exist.stderr
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
error[E0583]: file not found for module `not_a_real_file`
--> $DIR/mod_file_not_exist.rs:3:1
--> $DIR/mod_file_not_exist.rs:1:1
|
LL | mod not_a_real_file;
| ^^^^^^^^^^^^^^^^^^^^
Expand All @@ -8,7 +8,7 @@ LL | mod not_a_real_file;
= note: if there is a `mod not_a_real_file` elsewhere in the crate already, import it with `use crate::...` instead

error[E0433]: failed to resolve: use of unresolved module or unlinked crate `mod_file_aux`
--> $DIR/mod_file_not_exist.rs:7:16
--> $DIR/mod_file_not_exist.rs:5:16
|
LL | assert_eq!(mod_file_aux::bar(), 10);
| ^^^^^^^^^^^^ use of unresolved module or unlinked crate `mod_file_aux`
Expand Down
1 change: 0 additions & 1 deletion tests/ui/suggestions/missing-lifetime-specifier.rs
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
// The specific errors produced depend the thread-local implementation.
// Run only on platforms with "fast" TLS.
//@ ignore-windows FIXME(#84933)
//@ ignore-wasm globals are used instead of thread locals
//@ ignore-emscripten globals are used instead of thread locals
//@ ignore-android does not use #[thread_local]
Expand Down
18 changes: 9 additions & 9 deletions tests/ui/suggestions/missing-lifetime-specifier.stderr
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
error[E0106]: missing lifetime specifiers
--> $DIR/missing-lifetime-specifier.rs:28:44
--> $DIR/missing-lifetime-specifier.rs:27:44
|
LL | static a: RefCell<HashMap<i32, Vec<Vec<Foo>>>> = RefCell::new(HashMap::new());
| ^^^ expected 2 lifetime parameters
Expand All @@ -11,7 +11,7 @@ LL | static a: RefCell<HashMap<i32, Vec<Vec<Foo<'static, 'static>>>>> = RefC
| ++++++++++++++++++

error[E0106]: missing lifetime specifiers
--> $DIR/missing-lifetime-specifier.rs:32:44
--> $DIR/missing-lifetime-specifier.rs:31:44
|
LL | static b: RefCell<HashMap<i32, Vec<Vec<&Bar>>>> = RefCell::new(HashMap::new());
| ^^^^ expected 2 lifetime parameters
Expand All @@ -25,7 +25,7 @@ LL | static b: RefCell<HashMap<i32, Vec<Vec<&'static Bar<'static, 'static>>>
| +++++++ ++++++++++++++++++

error[E0106]: missing lifetime specifiers
--> $DIR/missing-lifetime-specifier.rs:36:47
--> $DIR/missing-lifetime-specifier.rs:35:47
|
LL | static c: RefCell<HashMap<i32, Vec<Vec<Qux<i32>>>>> = RefCell::new(HashMap::new());
| ^ expected 2 lifetime parameters
Expand All @@ -37,7 +37,7 @@ LL | static c: RefCell<HashMap<i32, Vec<Vec<Qux<'static, 'static, i32>>>>> =
| +++++++++++++++++

error[E0106]: missing lifetime specifiers
--> $DIR/missing-lifetime-specifier.rs:40:44
--> $DIR/missing-lifetime-specifier.rs:39:44
|
LL | static d: RefCell<HashMap<i32, Vec<Vec<&Tar<i32>>>>> = RefCell::new(HashMap::new());
| ^ ^ expected 2 lifetime parameters
Expand All @@ -51,7 +51,7 @@ LL | static d: RefCell<HashMap<i32, Vec<Vec<&'static Tar<'static, 'static, i
| +++++++ +++++++++++++++++

error[E0106]: missing lifetime specifier
--> $DIR/missing-lifetime-specifier.rs:49:44
--> $DIR/missing-lifetime-specifier.rs:48:44
|
LL | static f: RefCell<HashMap<i32, Vec<Vec<&Tar<'static, i32>>>>> = RefCell::new(HashMap::new());
| ^ expected named lifetime parameter
Expand All @@ -63,15 +63,15 @@ LL | static f: RefCell<HashMap<i32, Vec<Vec<&'static Tar<'static, i32>>>>> =
| +++++++

error[E0107]: union takes 2 lifetime arguments but 1 lifetime argument was supplied
--> $DIR/missing-lifetime-specifier.rs:45:44
--> $DIR/missing-lifetime-specifier.rs:44:44
|
LL | static e: RefCell<HashMap<i32, Vec<Vec<Qux<'static, i32>>>>> = RefCell::new(HashMap::new());
| ^^^ ------- supplied 1 lifetime argument
| |
| expected 2 lifetime arguments
|
note: union defined here, with 2 lifetime parameters: `'t`, `'k`
--> $DIR/missing-lifetime-specifier.rs:21:11
--> $DIR/missing-lifetime-specifier.rs:20:11
|
LL | pub union Qux<'t, 'k, I> {
| ^^^ -- --
Expand All @@ -81,15 +81,15 @@ LL | static e: RefCell<HashMap<i32, Vec<Vec<Qux<'static, 'static, i32>>>>> =
| +++++++++

error[E0107]: trait takes 2 lifetime arguments but 1 lifetime argument was supplied
--> $DIR/missing-lifetime-specifier.rs:49:45
--> $DIR/missing-lifetime-specifier.rs:48:45
|
LL | static f: RefCell<HashMap<i32, Vec<Vec<&Tar<'static, i32>>>>> = RefCell::new(HashMap::new());
| ^^^ ------- supplied 1 lifetime argument
| |
| expected 2 lifetime arguments
|
note: trait defined here, with 2 lifetime parameters: `'t`, `'k`
--> $DIR/missing-lifetime-specifier.rs:25:7
--> $DIR/missing-lifetime-specifier.rs:24:7
|
LL | trait Tar<'t, 'k, I> {}
| ^^^ -- --
Expand Down
1 change: 0 additions & 1 deletion tests/ui/threads-sendsync/spawning-with-debug.rs
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
//@ run-pass
#![allow(unused_must_use)]
#![allow(unused_mut)]
//@ ignore-windows
//@ exec-env:RUST_LOG=debug
//@ needs-threads

Expand Down
Loading

0 comments on commit b1e8099

Please sign in to comment.