From 8e7d2666e4b3d2d54f5265270b5819773027f54d Mon Sep 17 00:00:00 2001 From: Josh Stone Date: Apr 17 2024 00:15:17 +0000 Subject: Add fixes for several test cases --- diff --git a/0001-Fix-UI-tests-with-dist-vendored-dependencies.patch b/0001-Fix-UI-tests-with-dist-vendored-dependencies.patch new file mode 100644 index 0000000..2d18d30 --- /dev/null +++ b/0001-Fix-UI-tests-with-dist-vendored-dependencies.patch @@ -0,0 +1,51 @@ +From fb4d9ee194e4e6488dcbf9a7e4e16bb1e65ce5f2 Mon Sep 17 00:00:00 2001 +From: Josh Stone +Date: Mon, 8 Apr 2024 15:04:44 -0700 +Subject: [PATCH] Fix UI tests with dist-vendored dependencies + +There is already a workaround in `compiletest` to deal with custom +`CARGO_HOME` using `-Zignore-directory-in-diagnostics-source-blocks={}`. +A similar need exists when dependencies come from the local `vendor` +directory, which distro builds often use, so now we ignore that too. + +Also, `issue-21763.rs` was normalizing `hashbrown-` paths, presumably +expecting a version suffix, but the vendored path doesn't include the +version. Now that matches `[\\/]hashbrown` instead. + +(cherry picked from commit f7b2e37f7232540d9f2b2dc6e33597fbb74f4f63) +--- + src/tools/compiletest/src/runtest.rs | 5 +++++ + tests/ui/issues/issue-21763.rs | 2 +- + 2 files changed, 6 insertions(+), 1 deletion(-) + +diff --git a/src/tools/compiletest/src/runtest.rs b/src/tools/compiletest/src/runtest.rs +index 8be4def15ded..644775c0385c 100644 +--- a/src/tools/compiletest/src/runtest.rs ++++ b/src/tools/compiletest/src/runtest.rs +@@ -2362,6 +2362,11 @@ fn make_compile_args( + "ignore-directory-in-diagnostics-source-blocks={}", + home::cargo_home().expect("failed to find cargo home").to_str().unwrap() + )); ++ // Similarly, vendored sources shouldn't be shown when running from a dist tarball. ++ rustc.arg("-Z").arg(format!( ++ "ignore-directory-in-diagnostics-source-blocks={}", ++ self.config.find_rust_src_root().unwrap().join("vendor").display(), ++ )); + + // Optionally prevent default --sysroot if specified in test compile-flags. + if !self.props.compile_flags.iter().any(|flag| flag.starts_with("--sysroot")) +diff --git a/tests/ui/issues/issue-21763.rs b/tests/ui/issues/issue-21763.rs +index 38103ff4f9c8..cc1a00687b30 100644 +--- a/tests/ui/issues/issue-21763.rs ++++ b/tests/ui/issues/issue-21763.rs +@@ -1,6 +1,6 @@ + // Regression test for HashMap only impl'ing Send/Sync if its contents do + +-// normalize-stderr-test: "\S+hashbrown-\S+" -> "$$HASHBROWN_SRC_LOCATION" ++// normalize-stderr-test: "\S+[\\/]hashbrown\S+" -> "$$HASHBROWN_SRC_LOCATION" + + use std::collections::HashMap; + use std::rc::Rc; +-- +2.44.0 + diff --git a/0001-The-multiple_unsafe_ops_per_block-test-needs-asm.patch b/0001-The-multiple_unsafe_ops_per_block-test-needs-asm.patch new file mode 100644 index 0000000..71e6770 --- /dev/null +++ b/0001-The-multiple_unsafe_ops_per_block-test-needs-asm.patch @@ -0,0 +1,233 @@ +From 29ed7749a3a0e4399b91b3d4198891a4d861f105 Mon Sep 17 00:00:00 2001 +From: Josh Stone +Date: Tue, 16 Apr 2024 16:45:59 -0700 +Subject: [PATCH] The `multiple_unsafe_ops_per_block` test needs `asm!` + +(cherry picked from commit 245fbeef49c2395471498d20e67f4edf4222c865) +--- + tests/ui/multiple_unsafe_ops_per_block.rs | 1 + + tests/ui/multiple_unsafe_ops_per_block.stderr | 58 +++++++++---------- + 2 files changed, 30 insertions(+), 29 deletions(-) + +diff --git a/tests/ui/multiple_unsafe_ops_per_block.rs b/tests/ui/multiple_unsafe_ops_per_block.rs +index 8afb4df20af4..6b8a103d4a94 100644 +--- a/tests/ui/multiple_unsafe_ops_per_block.rs ++++ b/tests/ui/multiple_unsafe_ops_per_block.rs +@@ -1,3 +1,4 @@ ++//@needs-asm-support + //@aux-build:proc_macros.rs + #![allow(unused)] + #![allow(deref_nullptr)] +diff --git a/tests/ui/multiple_unsafe_ops_per_block.stderr b/tests/ui/multiple_unsafe_ops_per_block.stderr +index 4803a5089ab2..f9b22c68ddb1 100644 +--- a/tests/ui/multiple_unsafe_ops_per_block.stderr ++++ b/tests/ui/multiple_unsafe_ops_per_block.stderr +@@ -1,5 +1,5 @@ + error: this `unsafe` block contains 2 unsafe operations, expected only one +- --> $DIR/multiple_unsafe_ops_per_block.rs:36:5 ++ --> $DIR/multiple_unsafe_ops_per_block.rs:37:5 + | + LL | / unsafe { + LL | | STATIC += 1; +@@ -8,12 +8,12 @@ LL | | } + | |_____^ + | + note: modification of a mutable static occurs here +- --> $DIR/multiple_unsafe_ops_per_block.rs:37:9 ++ --> $DIR/multiple_unsafe_ops_per_block.rs:38:9 + | + LL | STATIC += 1; + | ^^^^^^^^^^^ + note: unsafe function call occurs here +- --> $DIR/multiple_unsafe_ops_per_block.rs:38:9 ++ --> $DIR/multiple_unsafe_ops_per_block.rs:39:9 + | + LL | not_very_safe(); + | ^^^^^^^^^^^^^^^ +@@ -21,7 +21,7 @@ LL | not_very_safe(); + = help: to override `-D warnings` add `#[allow(clippy::multiple_unsafe_ops_per_block)]` + + error: this `unsafe` block contains 2 unsafe operations, expected only one +- --> $DIR/multiple_unsafe_ops_per_block.rs:45:5 ++ --> $DIR/multiple_unsafe_ops_per_block.rs:46:5 + | + LL | / unsafe { + LL | | drop(u.u); +@@ -30,18 +30,18 @@ LL | | } + | |_____^ + | + note: union field access occurs here +- --> $DIR/multiple_unsafe_ops_per_block.rs:46:14 ++ --> $DIR/multiple_unsafe_ops_per_block.rs:47:14 + | + LL | drop(u.u); + | ^^^ + note: raw pointer dereference occurs here +- --> $DIR/multiple_unsafe_ops_per_block.rs:47:9 ++ --> $DIR/multiple_unsafe_ops_per_block.rs:48:9 + | + LL | *raw_ptr(); + | ^^^^^^^^^^ + + error: this `unsafe` block contains 3 unsafe operations, expected only one +- --> $DIR/multiple_unsafe_ops_per_block.rs:52:5 ++ --> $DIR/multiple_unsafe_ops_per_block.rs:53:5 + | + LL | / unsafe { + LL | | asm!("nop"); +@@ -51,23 +51,23 @@ LL | | } + | |_____^ + | + note: inline assembly used here +- --> $DIR/multiple_unsafe_ops_per_block.rs:53:9 ++ --> $DIR/multiple_unsafe_ops_per_block.rs:54:9 + | + LL | asm!("nop"); + | ^^^^^^^^^^^ + note: unsafe method call occurs here +- --> $DIR/multiple_unsafe_ops_per_block.rs:54:9 ++ --> $DIR/multiple_unsafe_ops_per_block.rs:55:9 + | + LL | sample.not_very_safe(); + | ^^^^^^^^^^^^^^^^^^^^^^ + note: modification of a mutable static occurs here +- --> $DIR/multiple_unsafe_ops_per_block.rs:55:9 ++ --> $DIR/multiple_unsafe_ops_per_block.rs:56:9 + | + LL | STATIC = 0; + | ^^^^^^^^^^ + + error: this `unsafe` block contains 6 unsafe operations, expected only one +- --> $DIR/multiple_unsafe_ops_per_block.rs:61:5 ++ --> $DIR/multiple_unsafe_ops_per_block.rs:62:5 + | + LL | / unsafe { + LL | | drop(u.u); +@@ -79,55 +79,55 @@ LL | | } + | |_____^ + | + note: union field access occurs here +- --> $DIR/multiple_unsafe_ops_per_block.rs:62:14 ++ --> $DIR/multiple_unsafe_ops_per_block.rs:63:14 + | + LL | drop(u.u); + | ^^^ + note: access of a mutable static occurs here +- --> $DIR/multiple_unsafe_ops_per_block.rs:63:14 ++ --> $DIR/multiple_unsafe_ops_per_block.rs:64:14 + | + LL | drop(STATIC); + | ^^^^^^ + note: unsafe method call occurs here +- --> $DIR/multiple_unsafe_ops_per_block.rs:64:9 ++ --> $DIR/multiple_unsafe_ops_per_block.rs:65:9 + | + LL | sample.not_very_safe(); + | ^^^^^^^^^^^^^^^^^^^^^^ + note: unsafe function call occurs here +- --> $DIR/multiple_unsafe_ops_per_block.rs:65:9 ++ --> $DIR/multiple_unsafe_ops_per_block.rs:66:9 + | + LL | not_very_safe(); + | ^^^^^^^^^^^^^^^ + note: raw pointer dereference occurs here +- --> $DIR/multiple_unsafe_ops_per_block.rs:66:9 ++ --> $DIR/multiple_unsafe_ops_per_block.rs:67:9 + | + LL | *raw_ptr(); + | ^^^^^^^^^^ + note: inline assembly used here +- --> $DIR/multiple_unsafe_ops_per_block.rs:67:9 ++ --> $DIR/multiple_unsafe_ops_per_block.rs:68:9 + | + LL | asm!("nop"); + | ^^^^^^^^^^^ + + error: this `unsafe` block contains 2 unsafe operations, expected only one +- --> $DIR/multiple_unsafe_ops_per_block.rs:105:5 ++ --> $DIR/multiple_unsafe_ops_per_block.rs:106:5 + | + LL | unsafe { char::from_u32_unchecked(*ptr.cast::()) } + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + | + note: unsafe function call occurs here +- --> $DIR/multiple_unsafe_ops_per_block.rs:105:14 ++ --> $DIR/multiple_unsafe_ops_per_block.rs:106:14 + | + LL | unsafe { char::from_u32_unchecked(*ptr.cast::()) } + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + note: raw pointer dereference occurs here +- --> $DIR/multiple_unsafe_ops_per_block.rs:105:39 ++ --> $DIR/multiple_unsafe_ops_per_block.rs:106:39 + | + LL | unsafe { char::from_u32_unchecked(*ptr.cast::()) } + | ^^^^^^^^^^^^^^^^^^ + + error: this `unsafe` block contains 2 unsafe operations, expected only one +- --> $DIR/multiple_unsafe_ops_per_block.rs:123:5 ++ --> $DIR/multiple_unsafe_ops_per_block.rs:124:5 + | + LL | / unsafe { + LL | | x(); +@@ -136,18 +136,18 @@ LL | | } + | |_____^ + | + note: unsafe function call occurs here +- --> $DIR/multiple_unsafe_ops_per_block.rs:124:9 ++ --> $DIR/multiple_unsafe_ops_per_block.rs:125:9 + | + LL | x(); + | ^^^ + note: unsafe function call occurs here +- --> $DIR/multiple_unsafe_ops_per_block.rs:125:9 ++ --> $DIR/multiple_unsafe_ops_per_block.rs:126:9 + | + LL | x(); + | ^^^ + + error: this `unsafe` block contains 2 unsafe operations, expected only one +- --> $DIR/multiple_unsafe_ops_per_block.rs:134:9 ++ --> $DIR/multiple_unsafe_ops_per_block.rs:135:9 + | + LL | / unsafe { + LL | | T::X(); +@@ -156,18 +156,18 @@ LL | | } + | |_________^ + | + note: unsafe function call occurs here +- --> $DIR/multiple_unsafe_ops_per_block.rs:135:13 ++ --> $DIR/multiple_unsafe_ops_per_block.rs:136:13 + | + LL | T::X(); + | ^^^^^^ + note: unsafe function call occurs here +- --> $DIR/multiple_unsafe_ops_per_block.rs:136:13 ++ --> $DIR/multiple_unsafe_ops_per_block.rs:137:13 + | + LL | T::X(); + | ^^^^^^ + + error: this `unsafe` block contains 2 unsafe operations, expected only one +- --> $DIR/multiple_unsafe_ops_per_block.rs:144:5 ++ --> $DIR/multiple_unsafe_ops_per_block.rs:145:5 + | + LL | / unsafe { + LL | | x.0(); +@@ -176,12 +176,12 @@ LL | | } + | |_____^ + | + note: unsafe function call occurs here +- --> $DIR/multiple_unsafe_ops_per_block.rs:145:9 ++ --> $DIR/multiple_unsafe_ops_per_block.rs:146:9 + | + LL | x.0(); + | ^^^^^ + note: unsafe function call occurs here +- --> $DIR/multiple_unsafe_ops_per_block.rs:146:9 ++ --> $DIR/multiple_unsafe_ops_per_block.rs:147:9 + | + LL | x.0(); + | ^^^^^ +-- +2.44.0 + diff --git a/0001-remove-stderr-per-bitwidth-from-some-tests.patch b/0001-remove-stderr-per-bitwidth-from-some-tests.patch new file mode 100644 index 0000000..57a0c1f --- /dev/null +++ b/0001-remove-stderr-per-bitwidth-from-some-tests.patch @@ -0,0 +1,82 @@ +From 96e7b2767b30c215361d26626ef235f5ec0e8cd5 Mon Sep 17 00:00:00 2001 +From: Ralf Jung +Date: Fri, 16 Feb 2024 10:01:43 +0100 +Subject: [PATCH] remove stderr-per-bitwidth from some tests + +(cherry picked from commit f68e79dcac3acb635c58ff2fa4178b9a0b040fe4) +--- + ...ut_ref_in_final_dynamic_check.64bit.stderr | 20 ------------------- + .../mut_ref_in_final_dynamic_check.rs | 3 ++- + ... => mut_ref_in_final_dynamic_check.stderr} | 8 ++++---- + 3 files changed, 6 insertions(+), 25 deletions(-) + delete mode 100644 tests/ui/consts/const-mut-refs/mut_ref_in_final_dynamic_check.64bit.stderr + rename tests/ui/consts/const-mut-refs/{mut_ref_in_final_dynamic_check.32bit.stderr => mut_ref_in_final_dynamic_check.stderr} (75%) + +diff --git a/tests/ui/consts/const-mut-refs/mut_ref_in_final_dynamic_check.64bit.stderr b/tests/ui/consts/const-mut-refs/mut_ref_in_final_dynamic_check.64bit.stderr +deleted file mode 100644 +index fc68207512c0..000000000000 +--- a/tests/ui/consts/const-mut-refs/mut_ref_in_final_dynamic_check.64bit.stderr ++++ /dev/null +@@ -1,20 +0,0 @@ +-error[E0080]: it is undefined behavior to use this value +- --> $DIR/mut_ref_in_final_dynamic_check.rs:15:1 +- | +-LL | const A: Option<&mut i32> = helper(); +- | ^^^^^^^^^^^^^^^^^^^^^^^^^ constructing invalid value at ..0: encountered mutable reference in a `const` or `static` +- | +- = note: The rules on what exactly is undefined behavior aren't clear, so this check might be overzealous. Please open an issue on the rustc repository if you believe it should not be considered undefined behavior. +- = note: the raw bytes of the constant (size: 8, align: 8) { +- 2a 00 00 00 00 00 00 00 │ *....... +- } +- +-error: encountered dangling pointer in final value of constant +- --> $DIR/mut_ref_in_final_dynamic_check.rs:22:1 +- | +-LL | const B: Option<&mut i32> = helper2(); +- | ^^^^^^^^^^^^^^^^^^^^^^^^^ +- +-error: aborting due to 2 previous errors +- +-For more information about this error, try `rustc --explain E0080`. +diff --git a/tests/ui/consts/const-mut-refs/mut_ref_in_final_dynamic_check.rs b/tests/ui/consts/const-mut-refs/mut_ref_in_final_dynamic_check.rs +index 455b557b97c4..b98f4d920694 100644 +--- a/tests/ui/consts/const-mut-refs/mut_ref_in_final_dynamic_check.rs ++++ b/tests/ui/consts/const-mut-refs/mut_ref_in_final_dynamic_check.rs +@@ -1,4 +1,5 @@ +-// stderr-per-bitwidth ++// normalize-stderr-test "(the raw bytes of the constant) \(size: [0-9]*, align: [0-9]*\)" -> "$1 (size: $$SIZE, align: $$ALIGN)" ++// normalize-stderr-test "([0-9a-f][0-9a-f] |╾─*ALLOC[0-9]+(\+[a-z0-9]+)?()?─*╼ )+ *│.*" -> "HEX_DUMP" + #![feature(const_mut_refs)] + #![feature(raw_ref_op)] + +diff --git a/tests/ui/consts/const-mut-refs/mut_ref_in_final_dynamic_check.32bit.stderr b/tests/ui/consts/const-mut-refs/mut_ref_in_final_dynamic_check.stderr +similarity index 75% +rename from tests/ui/consts/const-mut-refs/mut_ref_in_final_dynamic_check.32bit.stderr +rename to tests/ui/consts/const-mut-refs/mut_ref_in_final_dynamic_check.stderr +index 87420a037514..bb3c5518680b 100644 +--- a/tests/ui/consts/const-mut-refs/mut_ref_in_final_dynamic_check.32bit.stderr ++++ b/tests/ui/consts/const-mut-refs/mut_ref_in_final_dynamic_check.stderr +@@ -1,16 +1,16 @@ + error[E0080]: it is undefined behavior to use this value +- --> $DIR/mut_ref_in_final_dynamic_check.rs:15:1 ++ --> $DIR/mut_ref_in_final_dynamic_check.rs:16:1 + | + LL | const A: Option<&mut i32> = helper(); + | ^^^^^^^^^^^^^^^^^^^^^^^^^ constructing invalid value at ..0: encountered mutable reference in a `const` or `static` + | + = note: The rules on what exactly is undefined behavior aren't clear, so this check might be overzealous. Please open an issue on the rustc repository if you believe it should not be considered undefined behavior. +- = note: the raw bytes of the constant (size: 4, align: 4) { +- 2a 00 00 00 │ *... ++ = note: the raw bytes of the constant (size: $SIZE, align: $ALIGN) { ++ HEX_DUMP + } + + error: encountered dangling pointer in final value of constant +- --> $DIR/mut_ref_in_final_dynamic_check.rs:22:1 ++ --> $DIR/mut_ref_in_final_dynamic_check.rs:23:1 + | + LL | const B: Option<&mut i32> = helper2(); + | ^^^^^^^^^^^^^^^^^^^^^^^^^ +-- +2.44.0 + diff --git a/0001-test-don-t-compress-test-registry-crates.patch b/0001-test-don-t-compress-test-registry-crates.patch new file mode 100644 index 0000000..60f2f27 --- /dev/null +++ b/0001-test-don-t-compress-test-registry-crates.patch @@ -0,0 +1,185 @@ +From ed8e223cc58103cae0586351fd9113a727523cab Mon Sep 17 00:00:00 2001 +From: Josh Stone +Date: Thu, 11 Apr 2024 14:58:42 -0700 +Subject: [PATCH] test: don't compress test registry crates + +They are still nominally gzipped, but using `Compression::none()` makes +them consistent even across zlib and zlib-ng, and this fixes checksum +differences in the testsuite. There is a one-time update of all those +checksums to catch up with this change though. + +(cherry picked from commit a70f23c50b61c1a3335f2943375a04ae7abf2fa4) +--- + crates/cargo-test-support/src/registry.rs | 2 +- + tests/testsuite/alt_registry.rs | 2 +- + .../cargo_add/locked_unchanged/in/Cargo.lock | 2 +- + .../cargo_add/lockfile_updated/in/Cargo.lock | 2 +- + .../cargo_add/lockfile_updated/out/Cargo.lock | 4 ++-- + .../cargo_remove/update_lock_file/in/Cargo.lock | 16 ++++++++-------- + .../cargo_remove/update_lock_file/out/Cargo.lock | 12 ++++++------ + 7 files changed, 20 insertions(+), 20 deletions(-) + +diff --git a/crates/cargo-test-support/src/registry.rs b/crates/cargo-test-support/src/registry.rs +index cc51707dbbf9..e27d1e354d7b 100644 +--- a/crates/cargo-test-support/src/registry.rs ++++ b/crates/cargo-test-support/src/registry.rs +@@ -1469,7 +1469,7 @@ impl Package { + let dst = self.archive_dst(); + t!(fs::create_dir_all(dst.parent().unwrap())); + let f = t!(File::create(&dst)); +- let mut a = Builder::new(GzEncoder::new(f, Compression::default())); ++ let mut a = Builder::new(GzEncoder::new(f, Compression::none())); + + if !self + .files +diff --git a/tests/testsuite/alt_registry.rs b/tests/testsuite/alt_registry.rs +index f286dc018122..42b818493244 100644 +--- a/tests/testsuite/alt_registry.rs ++++ b/tests/testsuite/alt_registry.rs +@@ -1466,7 +1466,7 @@ dependencies = [ + name = "foo" + version = "0.1.0" + source = "sparse+http://[..]/" +-checksum = "f6a200a9339fef960979d94d5c99cbbfd899b6f5a396a55d9775089119050203""#, ++checksum = "458c1addb23fde7dfbca0410afdbcc0086f96197281ec304d9e0e10def3cb899""#, + ); + } + +diff --git a/tests/testsuite/cargo_add/locked_unchanged/in/Cargo.lock b/tests/testsuite/cargo_add/locked_unchanged/in/Cargo.lock +index 011b335926ee..b88709a9e9be 100644 +--- a/tests/testsuite/cargo_add/locked_unchanged/in/Cargo.lock ++++ b/tests/testsuite/cargo_add/locked_unchanged/in/Cargo.lock +@@ -13,4 +13,4 @@ dependencies = [ + name = "my-package" + version = "99999.0.0+my-package" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "62c45acf9e11d2f97f5b318143219c0b4102eafef1c22a4b545b47104691d915" ++checksum = "73cfa03cf28feb001362b377a837910c5a6ec1cc5cceaa562b97fc14d15edec8" +diff --git a/tests/testsuite/cargo_add/lockfile_updated/in/Cargo.lock b/tests/testsuite/cargo_add/lockfile_updated/in/Cargo.lock +index d9bcc988d3f2..d8fa962f3069 100644 +--- a/tests/testsuite/cargo_add/lockfile_updated/in/Cargo.lock ++++ b/tests/testsuite/cargo_add/lockfile_updated/in/Cargo.lock +@@ -14,4 +14,4 @@ dependencies = [ + name = "unrelateed-crate" + version = "0.2.0+my-package" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "266de4849a570b5dfda5e8e082a2aff885e9d2d4965dae8f8b6c8535e1ec731f" ++checksum = "b16af1a8ba7e4331ca62d945483a3028c2afbbe06a7f2ffaa0a3538ef0a7d63e" +diff --git a/tests/testsuite/cargo_add/lockfile_updated/out/Cargo.lock b/tests/testsuite/cargo_add/lockfile_updated/out/Cargo.lock +index 4b5fb465f104..e423b3d1f8b7 100644 +--- a/tests/testsuite/cargo_add/lockfile_updated/out/Cargo.lock ++++ b/tests/testsuite/cargo_add/lockfile_updated/out/Cargo.lock +@@ -14,10 +14,10 @@ dependencies = [ + name = "my-package" + version = "99999.0.0+my-package" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "62c45acf9e11d2f97f5b318143219c0b4102eafef1c22a4b545b47104691d915" ++checksum = "73cfa03cf28feb001362b377a837910c5a6ec1cc5cceaa562b97fc14d15edec8" + + [[package]] + name = "unrelateed-crate" + version = "0.2.0+my-package" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "266de4849a570b5dfda5e8e082a2aff885e9d2d4965dae8f8b6c8535e1ec731f" ++checksum = "b16af1a8ba7e4331ca62d945483a3028c2afbbe06a7f2ffaa0a3538ef0a7d63e" +diff --git a/tests/testsuite/cargo_remove/update_lock_file/in/Cargo.lock b/tests/testsuite/cargo_remove/update_lock_file/in/Cargo.lock +index 2302220f2fb7..a4018e70eb47 100644 +--- a/tests/testsuite/cargo_remove/update_lock_file/in/Cargo.lock ++++ b/tests/testsuite/cargo_remove/update_lock_file/in/Cargo.lock +@@ -19,40 +19,40 @@ dependencies = [ + name = "clippy" + version = "0.4.1+my-package" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "47ced0eda54e9ddc6063f0e1d0164493cd16c84c6b6a0329a536967c44e205f7" ++checksum = "e95568c5ce98de9c470c1d9b387466f4d5efa9687d3af7998e7c9c1da5e399fb" + + [[package]] + name = "docopt" + version = "0.6.2+my-package" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "b600540c4fafb27bf6e6961f0f1e6f547c9d6126ce581ab3a92f878c8e2c9a2c" ++checksum = "d4414d2705e6b42fe10772b4ab4e3260f362669e45606eb562dc4c0023e911f6" + + [[package]] + name = "regex" + version = "0.1.1+my-package" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "84949cb53285a6c481d0133065a7b669871acfd9e20f273f4ce1283c309775d5" ++checksum = "bc4552a1d503f3a436bb18d1efff62eb95bd97f724d06466c55ef151ea2de9e0" + + [[package]] + name = "rustc-serialize" +-version = "0.4.1+my-package" ++version = "0.4.0+my-package" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "31162e7d23a085553c42dee375787b451a481275473f7779c4a63bcc267a24fd" ++checksum = "48c3645ec42f69a343fbe9734a477ae59448192e779206dbcb1a9c3397563fd8" + + [[package]] + name = "semver" + version = "0.1.1" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "106bee742e3199d9e59f4269e458dfc825c1b4648c483b1c2b7a45cd2610a308" ++checksum = "20070289360e74dcdc28f437b08dda0c0c861c2328d749bb0d6e1a428013af83" + + [[package]] + name = "serde" + version = "1.0.90" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "be7d269f612a60e3c2c4a4a120e2d878a3f3298a5285eda6e95453905a107d9a" ++checksum = "ba76b226746eabf28375d5ad184926bbb9cd727425c8d027ea10f6c508895c6c" + + [[package]] + name = "toml" + version = "0.1.1+my-package" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "a0f6c7804525ce0a968ef270e55a516cf4bdcf1fea0b09d130e0aa34a66745b3" ++checksum = "a9ea5fa6eaed7d7e6d9fb4571bb9d915b577e19bf2a95321ebb70fd3d894ce49" +diff --git a/tests/testsuite/cargo_remove/update_lock_file/out/Cargo.lock b/tests/testsuite/cargo_remove/update_lock_file/out/Cargo.lock +index 0946cee47717..af60414ddad2 100644 +--- a/tests/testsuite/cargo_remove/update_lock_file/out/Cargo.lock ++++ b/tests/testsuite/cargo_remove/update_lock_file/out/Cargo.lock +@@ -18,34 +18,34 @@ dependencies = [ + name = "clippy" + version = "0.4.1+my-package" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "47ced0eda54e9ddc6063f0e1d0164493cd16c84c6b6a0329a536967c44e205f7" ++checksum = "e95568c5ce98de9c470c1d9b387466f4d5efa9687d3af7998e7c9c1da5e399fb" + + [[package]] + name = "docopt" + version = "0.6.2+my-package" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "b600540c4fafb27bf6e6961f0f1e6f547c9d6126ce581ab3a92f878c8e2c9a2c" ++checksum = "d4414d2705e6b42fe10772b4ab4e3260f362669e45606eb562dc4c0023e911f6" + + [[package]] + name = "regex" + version = "0.1.1+my-package" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "84949cb53285a6c481d0133065a7b669871acfd9e20f273f4ce1283c309775d5" ++checksum = "bc4552a1d503f3a436bb18d1efff62eb95bd97f724d06466c55ef151ea2de9e0" + + [[package]] + name = "semver" + version = "0.1.1" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "106bee742e3199d9e59f4269e458dfc825c1b4648c483b1c2b7a45cd2610a308" ++checksum = "20070289360e74dcdc28f437b08dda0c0c861c2328d749bb0d6e1a428013af83" + + [[package]] + name = "serde" + version = "1.0.90" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "be7d269f612a60e3c2c4a4a120e2d878a3f3298a5285eda6e95453905a107d9a" ++checksum = "ba76b226746eabf28375d5ad184926bbb9cd727425c8d027ea10f6c508895c6c" + + [[package]] + name = "toml" + version = "0.1.1+my-package" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "a0f6c7804525ce0a968ef270e55a516cf4bdcf1fea0b09d130e0aa34a66745b3" ++checksum = "a9ea5fa6eaed7d7e6d9fb4571bb9d915b577e19bf2a95321ebb70fd3d894ce49" +-- +2.44.0 + diff --git a/121088.patch b/121088.patch index b70b52a..af436d2 100644 --- a/121088.patch +++ b/121088.patch @@ -43,7 +43,7 @@ index 0000000000000..a15060857eccb +// compile-flags: --crate-type=lib -C target-cpu=skylake + +#![feature(avx512_target_feature)] -+#![feature(stdarch_x86_avx512)] ++#![feature(stdsimd)] + +use std::arch::x86_64::*; + diff --git a/rust.spec b/rust.spec index e6c5a3a..885a409 100644 --- a/rust.spec +++ b/rust.spec @@ -149,6 +149,18 @@ Patch8: 121088.patch # https://github.com/rust-lang/rust/pull/123520 Patch9: 0001-bootstrap-move-all-of-rustc-s-flags-to-rustc_cargo.patch +# https://github.com/rust-lang/rust/pull/123652 +Patch10: 0001-Fix-UI-tests-with-dist-vendored-dependencies.patch + +# https://github.com/rust-lang/rust/pull/121179 (partial) +Patch11: 0001-remove-stderr-per-bitwidth-from-some-tests.patch + +# https://github.com/rust-lang/cargo/pull/13744 +Patch12: 0001-test-don-t-compress-test-registry-crates.patch + +# https://github.com/rust-lang/rust-clippy/pull/12682 +Patch13: 0001-The-multiple_unsafe_ops_per_block-test-needs-asm.patch + ### RHEL-specific patches below ### # Simple rpm macros for rust-toolset (as opposed to full rust-packaging) @@ -614,6 +626,10 @@ rm -rf %{wasi_libc_dir}/dlmalloc/ %patch -P7 -p1 %patch -P8 -p1 %patch -P9 -p1 +%patch -P10 -p1 +%patch -P11 -p1 +%patch -P12 -p1 -d src/tools/cargo +%patch -P13 -p1 -d src/tools/clippy %if %with disabled_libssh2 %patch -P100 -p1