Skip to content

Commit 2adaa5d

Browse files
committed
Bump rustfix 0.8.1 -> 0.8.7
This commit can be replicated by running `cargo update -p rustfix --precise 0.8.7 && x test ui --bless`. --- The reasons this affects UI tests is as follows: - The UI test suite runs rustc with `-Z deduplicate-diagnostics=no --error-format=json`, which means that rustc emits multiple errors containing identical suggestions. That caused the weird-looking code that had multiple `X: Copy` suggestions. - Those suggestions are interpreted not by rustc itself, but by the `rustfix` library, maintained by cargo but published as a separate crates.io library and used by compiletest. - Sometime between rustfix 0.8.1 and 0.8.7 (probably in cargo 14747, but it's hard to tell because rustfix's versioning doesn't match cargo's), rustfix got smarter and stopped applying duplicate suggestions. Update rustfix to match cargo's behavior. Ideally, we would always share a version of rustfix between cargo and rustc (perhaps with a path dependency?), to make sure we are testing the behavior we ship. But for now, just manually update it to match. Note that the latest version of rustfix published to crates.io is 0.9.1, not 0.8.7. But 0.9.1 is not the version used in cargo, which is 0.9.3. Rather than trying to match versions exactly, I just updated rustfix to the latest in the 0.8 branch.
1 parent f3fd3ef commit 2adaa5d

File tree

7 files changed

+10
-10
lines changed

7 files changed

+10
-10
lines changed

Cargo.lock

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4817,9 +4817,9 @@ dependencies = [
48174817

48184818
[[package]]
48194819
name = "rustfix"
4820-
version = "0.8.1"
4820+
version = "0.8.7"
48214821
source = "registry+https://github.com/rust-lang/crates.io-index"
4822-
checksum = "81864b097046da5df3758fdc6e4822bbb70afa06317e8ca45ea1b51cb8c5e5a4"
4822+
checksum = "82fa69b198d894d84e23afde8e9ab2af4400b2cba20d6bf2b428a8b01c222c5a"
48234823
dependencies = [
48244824
"serde",
48254825
"serde_json",

tests/ui/associated-types/associated-types-for-unimpl-trait.fixed

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ trait Get {
88
}
99

1010
trait Other {
11-
fn uhoh<U: Get>(&self, foo: U, bar: <Self as Get>::Value) where Self: Sized, Self: Get, Self: Get {}
11+
fn uhoh<U: Get>(&self, foo: U, bar: <Self as Get>::Value) where Self: Sized, Self: Get {}
1212
//~^ ERROR the trait bound `Self: Get` is not satisfied
1313
//~| ERROR the trait bound `Self: Get` is not satisfied
1414
}

tests/ui/lifetimes/issue-105507.fixed

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ impl<T> ProjectedMyTrait for T
3131

3232
fn require_trait<T: MyTrait>(_: T) {}
3333

34-
fn foo<T : MyTrait + 'static + 'static, U : MyTrait + 'static + 'static>(wrap: Wrapper<'_, Option<T>>, wrap1: Wrapper<'_, Option<U>>) {
34+
fn foo<T : MyTrait + 'static, U : MyTrait + 'static>(wrap: Wrapper<'_, Option<T>>, wrap1: Wrapper<'_, Option<U>>) {
3535
//~^ HELP consider restricting the type parameter to the `'static` lifetime
3636
//~| HELP consider restricting the type parameter to the `'static` lifetime
3737
require_trait(wrap);

tests/ui/parser/expr-as-stmt.fixed

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@ fn asteroids() -> impl FnOnce() -> bool {
6666

6767
// https://github.com/rust-lang/rust/issues/105179
6868
fn r#match() -> i32 {
69-
((match () { () => 1 })) + match () { () => 1 } //~ ERROR expected expression, found `+`
69+
(match () { () => 1 }) + match () { () => 1 } //~ ERROR expected expression, found `+`
7070
//~^ ERROR mismatched types
7171
}
7272

@@ -82,7 +82,7 @@ fn matches() -> bool {
8282
(match () { _ => true }) && match () { _ => true }; //~ ERROR mismatched types
8383
//~^ ERROR expected `;`, found keyword `match`
8484
(match () { _ => true }) && true; //~ ERROR mismatched types
85-
((match () { _ => true })) && true //~ ERROR mismatched types
85+
(match () { _ => true }) && true //~ ERROR mismatched types
8686
//~^ ERROR mismatched types
8787
}
8888
fn main() {}

tests/ui/suggestions/missing-bound-in-derive-copy-impl-2.fixed

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ pub struct Vector2<T: Debug + Copy + Clone> {
88
}
99

1010
#[derive(Debug, Copy, Clone)]
11-
pub struct AABB<K: Debug + std::marker::Copy + std::marker::Copy + std::marker::Copy + std::marker::Copy> {
11+
pub struct AABB<K: Debug + std::marker::Copy> {
1212
pub loc: Vector2<K>, //~ ERROR the trait bound `K: Copy` is not satisfied
1313
//~^ ERROR the trait bound `K: Copy` is not satisfied
1414
//~| ERROR the trait bound `K: Copy` is not satisfied

tests/ui/suggestions/missing-bound-in-derive-copy-impl-3.fixed

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ pub struct Vector2<T: Debug + Copy + Clone>{
88
}
99

1010
#[derive(Debug, Copy, Clone)] //~ ERROR the trait `Copy` cannot be implemented for this type
11-
pub struct AABB<K: Copy + Debug + std::fmt::Debug + std::fmt::Debug + std::fmt::Debug>{
11+
pub struct AABB<K: Copy + Debug + std::fmt::Debug>{
1212
pub loc: Vector2<K>, //~ ERROR `K` doesn't implement `Debug`
1313
//~^ ERROR `K` doesn't implement `Debug`
1414
pub size: Vector2<K> //~ ERROR `K` doesn't implement `Debug`

tests/ui/suggestions/trait-impl-bound-suggestions.fixed

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ struct ConstrainedStruct<X: Copy> {
1010
}
1111

1212
#[allow(dead_code)]
13-
trait InsufficientlyConstrainedGeneric<X=()> where Self: Sized, X: std::marker::Copy, X: std::marker::Copy {
13+
trait InsufficientlyConstrainedGeneric<X=()> where Self: Sized, X: std::marker::Copy {
1414
fn return_the_constrained_type(&self, x: X) -> ConstrainedStruct<X> {
1515
//~^ ERROR the trait bound `X: Copy` is not satisfied
1616
ConstrainedStruct { x }
@@ -20,7 +20,7 @@ trait InsufficientlyConstrainedGeneric<X=()> where Self: Sized, X: std::marker::
2020

2121
// Regression test for #120838
2222
#[allow(dead_code)]
23-
trait InsufficientlyConstrainedGenericWithEmptyWhere<X=()> where Self: Sized, X: std::marker::Copy, X: std::marker::Copy {
23+
trait InsufficientlyConstrainedGenericWithEmptyWhere<X=()> where Self: Sized, X: std::marker::Copy {
2424
fn return_the_constrained_type(&self, x: X) -> ConstrainedStruct<X> {
2525
//~^ ERROR the trait bound `X: Copy` is not satisfied
2626
ConstrainedStruct { x }

0 commit comments

Comments
 (0)