Skip to content

[perf] Don't use true fulfillment errors in method probe #142202

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed

Conversation

compiler-errors
Copy link
Member

No description provided.

@rustbot rustbot added the T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. label Jun 8, 2025
@compiler-errors
Copy link
Member Author

@bors2 try @rust-timer queue

@rust-timer

This comment has been minimized.

@rust-bors
Copy link

rust-bors bot commented Jun 8, 2025

⌛ Trying commit dd64a0f with merge 839e714

To cancel the try build, run the command @bors2 try cancel.

rust-bors bot added a commit that referenced this pull request Jun 8, 2025
[perf] Don't use true fulfillment errors in method probe
@rustbot rustbot added the S-waiting-on-perf Status: Waiting on a perf run to be completed. label Jun 8, 2025
@rust-log-analyzer
Copy link
Collaborator

The job aarch64-gnu-llvm-19-1 failed! Check out the build log: (web) (plain)

Click to see the possible cause of the failure (guessed by this bot)

failures:

---- [ui] tests/ui/const-generics/adt_const_params/non_valtreeable_const_arg-2.rs stdout ----
Saved the actual stderr to `/checkout/obj/build/aarch64-unknown-linux-gnu/test/ui/const-generics/adt_const_params/non_valtreeable_const_arg-2/non_valtreeable_const_arg-2.stderr`
diff of stderr:

15 LL | struct Wrapper<const F: fn()>;
16    |                         ^^^^
17 
- error[E0599]: the function or associated item `call` exists for struct `Wrapper<function>`, but its trait bounds were not satisfied
+ error[E0599]: expected a `Fn<_>` closure, found `Wrapper<function>`
19   --> $DIR/non_valtreeable_const_arg-2.rs:17:26
20    |
21 LL | struct Wrapper<const F: fn()>;

22    | ----------------------------- function or associated item `call` not found for this struct because it doesn't satisfy `Wrapper<function>: Fn<_>`
23 ...
24 LL |     Wrapper::<function>::call;
-    |                          ^^^^ function or associated item cannot be called on `Wrapper<function>` due to unsatisfied trait bounds
+    |                          ^^^^ expected an `Fn<_>` closure, found `Wrapper<function>`
26    |
27    = note: the following trait bounds were not satisfied:
28            `Wrapper<function>: Fn<_>`


The actual stderr differed from the expected stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args const-generics/adt_const_params/non_valtreeable_const_arg-2.rs`

error: 1 errors occurred comparing output.
status: exit status: 1
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/aarch64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/const-generics/adt_const_params/non_valtreeable_const_arg-2.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/aarch64-unknown-linux-gnu/stage2" "--target=aarch64-unknown-linux-gnu" "--check-cfg" "cfg(test,FALSE)" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/aarch64-unknown-linux-gnu/test/ui/const-generics/adt_const_params/non_valtreeable_const_arg-2" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/aarch64-unknown-linux-gnu/native/rust-test-helpers"
stdout: none
--- stderr -------------------------------
error[E0425]: cannot find function `bar` in this scope
##[error]  --> /checkout/tests/ui/const-generics/adt_const_params/non_valtreeable_const_arg-2.rs:11:16
   |
LL | impl Wrapper<{ bar() }> {
   |                ^^^ not found in this scope
   |
help: you might be missing a const parameter
   |
LL | impl<const bar: /* Type */> Wrapper<{ bar() }> {
   |     +++++++++++++++++++++++

error[E0741]: using function pointers as const generic parameters is forbidden
##[error]  --> /checkout/tests/ui/const-generics/adt_const_params/non_valtreeable_const_arg-2.rs:8:25
   |
LL | struct Wrapper<const F: fn()>;
   |                         ^^^^

error[E0599]: expected a `Fn<_>` closure, found `Wrapper<function>`
##[error]  --> /checkout/tests/ui/const-generics/adt_const_params/non_valtreeable_const_arg-2.rs:17:26
   |
LL | struct Wrapper<const F: fn()>;
   | ----------------------------- function or associated item `call` not found for this struct because it doesn't satisfy `Wrapper<function>: Fn<_>`
...
LL |     Wrapper::<function>::call;
   |                          ^^^^ expected an `Fn<_>` closure, found `Wrapper<function>`
   |
   = note: the following trait bounds were not satisfied:
           `Wrapper<function>: Fn<_>`
           which is required by `&Wrapper<function>: Fn<_>`
note: the trait `Fn` must be implemented
  --> /rustc/FAKE_PREFIX/library/core/src/ops/function.rs:76:1
   = help: items from traits can only be used if the trait is implemented and in scope
   = note: the following trait defines an item `call`, perhaps you need to implement it:
           candidate #1: `Fn`

---

6    |      |
7    |      found this type parameter
8 
- error[E0599]: the function or associated item `foo` exists for struct `Foo<_>`, but its trait bounds were not satisfied
+ error[E0599]: no function or associated item named `foo` found for struct `Foo<_>` in the current scope
10   --> $DIR/issue-69654.rs:17:10
11    |
12 LL | struct Foo<const N: usize> {}

13    | -------------------------- function or associated item `foo` not found for this struct
14 ...
15 LL |     Foo::foo();
-    |          ^^^ function or associated item cannot be called on `Foo<_>` due to unsatisfied trait bounds
+    |          ^^^ function or associated item not found in `Foo<_>`
17    |
- note: trait bound `[u8; _]: Bar<[(); _]>` was not satisfied
-   --> $DIR/issue-69654.rs:11:14
-    |
- LL | impl<const N: usize> Foo<N>
-    |                      ------
- LL | where
- LL |     [u8; N]: Bar<[(); N]>,
-    |              ^^^^^^^^^^^^ unsatisfied trait bound introduced here
+    = note: the function or associated item was found for
+            - `Foo<N>`
26 
27 error: aborting due to 2 previous errors
28 


The actual stderr differed from the expected stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args const-generics/generic_const_exprs/issue-69654.rs`

error: 1 errors occurred comparing output.
status: exit status: 1
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/aarch64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/const-generics/generic_const_exprs/issue-69654.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/aarch64-unknown-linux-gnu/stage2" "--target=aarch64-unknown-linux-gnu" "--check-cfg" "cfg(test,FALSE)" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/aarch64-unknown-linux-gnu/test/ui/const-generics/generic_const_exprs/issue-69654" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/aarch64-unknown-linux-gnu/native/rust-test-helpers"
stdout: none
--- stderr -------------------------------
error[E0423]: expected value, found type parameter `T`
##[error]  --> /checkout/tests/ui/const-generics/generic_const_exprs/issue-69654.rs:5:25
   |
LL | impl<T> Bar<T> for [u8; T] {}
   |      -                  ^ not a value
   |      |
   |      found this type parameter

error[E0599]: no function or associated item named `foo` found for struct `Foo<_>` in the current scope
---
...
LL |     Foo::foo();
   |          ^^^ function or associated item not found in `Foo<_>`
   |
   = note: the function or associated item was found for
           - `Foo<N>`

error: aborting due to 2 previous errors

Some errors have detailed explanations: E0423, E0599.
For more information about an error, try `rustc --explain E0423`.
---
diff of stderr:

16    | -------------------------- function or associated item `assert` not found for this struct
17 ...
18 LL |     Bool::<{ std::mem::needs_drop::<T>() }>::assert();
-    |                                              ^^^^^^ function or associated item cannot be called on `Bool<{ std::mem::needs_drop::<T>() }>` due to unsatisfied trait bounds
+    |                                              ^^^^^^ function or associated item not found in `Bool<{ std::mem::needs_drop::<T>() }>`
+    |
+    = note: the function or associated item was found for
+            - `Bool<true>`
20 
21 error: aborting due to 2 previous errors
22 


The actual stderr differed from the expected stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args consts/const-needs_drop-monomorphic.rs`

error: 1 errors occurred comparing output.
status: exit status: 1
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/aarch64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/consts/const-needs_drop-monomorphic.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/aarch64-unknown-linux-gnu/stage2" "--target=aarch64-unknown-linux-gnu" "--check-cfg" "cfg(test,FALSE)" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/aarch64-unknown-linux-gnu/test/ui/consts/const-needs_drop-monomorphic" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/aarch64-unknown-linux-gnu/native/rust-test-helpers"
stdout: none
--- stderr -------------------------------
error: unconstrained generic constant
##[error]  --> /checkout/tests/ui/consts/const-needs_drop-monomorphic.rs:11:5
   |
LL |     Bool::<{ std::mem::needs_drop::<T>() }>::assert();
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   |
help: try adding a `where` bound
   |
LL | fn f<T>() where [(); { std::mem::needs_drop::<T>() } as usize]: {
   |           +++++++++++++++++++++++++++++++++++++++++++++++++++++

error[E0599]: no function or associated item named `assert` found for struct `Bool<{ std::mem::needs_drop::<T>() }>` in the current scope
##[error]  --> /checkout/tests/ui/consts/const-needs_drop-monomorphic.rs:11:46
   |
LL | struct Bool<const B: bool> {}
   | -------------------------- function or associated item `assert` not found for this struct
...
LL |     Bool::<{ std::mem::needs_drop::<T>() }>::assert();
   |                                              ^^^^^^ function or associated item not found in `Bool<{ std::mem::needs_drop::<T>() }>`
   |
   = note: the function or associated item was found for
           - `Bool<true>`

error: aborting due to 2 previous errors

For more information about this error, try `rustc --explain E0599`.
------------------------------------------


---- [ui] tests/ui/derives/issue-91492.rs stdout ----
Saved the actual stderr to `/checkout/obj/build/aarch64-unknown-linux-gnu/test/ui/derives/issue-91492/issue-91492.stderr`
diff of stderr:

- error[E0599]: the method `extend_from_slice` exists for mutable reference `&mut Vec<NoDerives>`, but its trait bounds were not satisfied
+ error[E0599]: no method named `extend_from_slice` found for mutable reference `&mut Vec<NoDerives>` in the current scope
2   --> $DIR/issue-91492.rs:4:9
3    |
- LL | pub struct NoDerives;
-    | -------------------- doesn't satisfy `NoDerives: Clone`
- LL | fn fun1(foo: &mut Vec<NoDerives>, bar: &[NoDerives]) {
7 LL |     foo.extend_from_slice(bar);
8    |         ^^^^^^^^^^^^^^^^^
9    |

-    = note: the following trait bounds were not satisfied:
-            `NoDerives: Clone`
- help: consider annotating `NoDerives` with `#[derive(Clone)]`
+ help: there is a method `clone_from_slice` with a similar name
13    |
- LL + #[derive(Clone)]
- LL | pub struct NoDerives;
+ LL -     foo.extend_from_slice(bar);
+ LL +     foo.clone_from_slice(bar);
16    |
17 
- error[E0599]: the method `extend_from_slice` exists for mutable reference `&mut Vec<SomeDerives>`, but its trait bounds were not satisfied
+ error[E0599]: no method named `extend_from_slice` found for mutable reference `&mut Vec<SomeDerives>` in the current scope
19   --> $DIR/issue-91492.rs:12:9
20    |
- LL | pub struct SomeDerives;
-    | ---------------------- doesn't satisfy `SomeDerives: Clone`
- LL | fn fun2(foo: &mut Vec<SomeDerives>, bar: &[SomeDerives]) {
24 LL |     foo.extend_from_slice(bar);
25    |         ^^^^^^^^^^^^^^^^^
26    |

-    = note: the following trait bounds were not satisfied:
-            `SomeDerives: Clone`
- help: consider annotating `SomeDerives` with `#[derive(Clone)]`
+ help: there is a method `clone_from_slice` with a similar name
30    |
- LL + #[derive(Clone)]
- LL | pub struct SomeDerives;
+ LL -     foo.extend_from_slice(bar);
+ LL +     foo.clone_from_slice(bar);
33    |
34 
- error[E0599]: the method `use_clone` exists for struct `Object<NoDerives, SomeDerives>`, but its trait bounds were not satisfied
+ error[E0599]: no method named `use_clone` found for struct `Object<NoDerives, SomeDerives>` in the current scope
36   --> $DIR/issue-91492.rs:22:9
37    |
- LL | pub struct NoDerives;
-    | -------------------- doesn't satisfy `NoDerives: Clone`
- ...
41 LL | struct Object<T, A>(T, A);
42    | ------------------- method `use_clone` not found for this struct
43 ...

44 LL |     foo.use_clone();
-    |         ^^^^^^^^^ method cannot be called on `Object<NoDerives, SomeDerives>` due to unsatisfied trait bounds
+    |         ^^^^^^^^^ method not found in `Object<NoDerives, SomeDerives>`
46    |
- note: trait bound `NoDerives: Clone` was not satisfied
-   --> $DIR/issue-91492.rs:18:9
-    |
- LL | impl<T: Clone, A: Default> Object<T, A> {
-    |         ^^^^^              ------------
-    |         |
-    |         unsatisfied trait bound introduced here
- help: consider annotating `NoDerives` with `#[derive(Clone)]`
-    |
- LL + #[derive(Clone)]
- LL | pub struct NoDerives;
-    |
+    = note: the method was found for
+            - `Object<T, A>`
59 
60 error: aborting due to 3 previous errors
61 

Note: some mismatched output was normalized before being compared
- LL -     foo.extend_from_slice(bar); //~ ERROR
- LL +     foo.clone_from_slice(bar); //~ ERROR
- LL -     foo.extend_from_slice(bar); //~ ERROR
- LL +     foo.clone_from_slice(bar); //~ ERROR
+ error[E0599]: no method named `extend_from_slice` found for mutable reference `&mut Vec<NoDerives>` in the current scope
+ help: there is a method `clone_from_slice` with a similar name
+ LL -     foo.extend_from_slice(bar);
+ LL +     foo.clone_from_slice(bar);
+ error[E0599]: no method named `extend_from_slice` found for mutable reference `&mut Vec<SomeDerives>` in the current scope
+ help: there is a method `clone_from_slice` with a similar name
+ LL -     foo.extend_from_slice(bar);
+ LL +     foo.clone_from_slice(bar);
+ error[E0599]: no method named `use_clone` found for struct `Object<NoDerives, SomeDerives>` in the current scope
+    |         ^^^^^^^^^ method not found in `Object<NoDerives, SomeDerives>`
+    = note: the method was found for
+            - `Object<T, A>`


The actual stderr differed from the expected stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args derives/issue-91492.rs`

error: 1 errors occurred comparing output.
status: exit status: 1
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/aarch64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/derives/issue-91492.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/aarch64-unknown-linux-gnu/stage2" "--target=aarch64-unknown-linux-gnu" "--check-cfg" "cfg(test,FALSE)" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/aarch64-unknown-linux-gnu/test/ui/derives/issue-91492" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/aarch64-unknown-linux-gnu/native/rust-test-helpers"
stdout: none
--- stderr -------------------------------
error[E0599]: no method named `extend_from_slice` found for mutable reference `&mut Vec<NoDerives>` in the current scope
##[error]  --> /checkout/tests/ui/derives/issue-91492.rs:4:9
   |
LL |     foo.extend_from_slice(bar); //~ ERROR
   |         ^^^^^^^^^^^^^^^^^
   |
help: there is a method `clone_from_slice` with a similar name
   |
LL -     foo.extend_from_slice(bar); //~ ERROR
LL +     foo.clone_from_slice(bar); //~ ERROR
   |

error[E0599]: no method named `extend_from_slice` found for mutable reference `&mut Vec<SomeDerives>` in the current scope
##[error]  --> /checkout/tests/ui/derives/issue-91492.rs:12:9
   |
LL |     foo.extend_from_slice(bar); //~ ERROR
   |         ^^^^^^^^^^^^^^^^^
   |
help: there is a method `clone_from_slice` with a similar name
   |
LL -     foo.extend_from_slice(bar); //~ ERROR
LL +     foo.clone_from_slice(bar); //~ ERROR
   |

error[E0599]: no method named `use_clone` found for struct `Object<NoDerives, SomeDerives>` in the current scope
##[error]  --> /checkout/tests/ui/derives/issue-91492.rs:22:9
   |
LL | struct Object<T, A>(T, A);
   | ------------------- method `use_clone` not found for this struct
...
LL |     foo.use_clone(); //~ ERROR
   |         ^^^^^^^^^ method not found in `Object<NoDerives, SomeDerives>`
   |
   = note: the method was found for
           - `Object<T, A>`

error: aborting due to 3 previous errors

For more information about this error, try `rustc --explain E0599`.
------------------------------------------


---- [ui] tests/ui/derives/issue-91550.rs stdout ----
Saved the actual stderr to `/checkout/obj/build/aarch64-unknown-linux-gnu/test/ui/derives/issue-91550/issue-91550.stderr`
diff of stderr:

- error[E0599]: the method `insert` exists for struct `HashSet<Value>`, but its trait bounds were not satisfied
+ error[E0599]: no method named `insert` found for struct `HashSet<Value>` in the current scope
2   --> $DIR/issue-91550.rs:8:8
3    |
- LL | struct Value(u32);
-    | ------------ doesn't satisfy `Value: Eq` or `Value: Hash`
- ...
7 LL |     hs.insert(Value(0));
8    |        ^^^^^^
9    |

-    = note: the following trait bounds were not satisfied:
-            `Value: Eq`
---
-    |
+ help: there is a method `iter` with a similar name, but with different arguments
+   --> $SRC_DIR/std/src/collections/hash/set.rs:LL:COL
18 
- error[E0599]: the method `use_eq` exists for struct `Object<NoDerives>`, but its trait bounds were not satisfied
+ error[E0599]: no method named `use_eq` found for struct `Object<NoDerives>` in the current scope
20   --> $DIR/issue-91550.rs:26:9
21    |
- LL | pub struct NoDerives;
-    | -------------------- doesn't satisfy `NoDerives: Eq`
- LL |
25 LL | struct Object<T>(T);
26    | ---------------- method `use_eq` not found for this struct
27 ...

28 LL |     foo.use_eq();
-    |         ^^^^^^ method cannot be called on `Object<NoDerives>` due to unsatisfied trait bounds
+    |         ^^^^^^ method not found in `Object<NoDerives>`
30    |
- note: trait bound `NoDerives: Eq` was not satisfied
-   --> $DIR/issue-91550.rs:15:9
-    |
- LL | impl<T: Eq> Object<T> {
-    |         ^^  ---------
-    |         |
-    |         unsatisfied trait bound introduced here
- help: consider annotating `NoDerives` with `#[derive(Eq, PartialEq)]`
-    |
- LL + #[derive(Eq, PartialEq)]
- LL | pub struct NoDerives;
-    |
+    = note: the method was found for
+            - `Object<T>`
43 
- error[E0599]: the method `use_ord` exists for struct `Object<NoDerives>`, but its trait bounds were not satisfied
+ error[E0599]: no method named `use_ord` found for struct `Object<NoDerives>` in the current scope
45   --> $DIR/issue-91550.rs:27:9
46    |
- LL | pub struct NoDerives;
-    | -------------------- doesn't satisfy `NoDerives: Ord`
- LL |
50 LL | struct Object<T>(T);
51    | ---------------- method `use_ord` not found for this struct
52 ...

53 LL |     foo.use_ord();
-    |         ^^^^^^^ method cannot be called on `Object<NoDerives>` due to unsatisfied trait bounds
+    |         ^^^^^^^ method not found in `Object<NoDerives>`
55    |
- note: trait bound `NoDerives: Ord` was not satisfied
-   --> $DIR/issue-91550.rs:18:9
-    |
- LL | impl<T: Ord> Object<T> {
-    |         ^^^  ---------
-    |         |
-    |         unsatisfied trait bound introduced here
- help: consider annotating `NoDerives` with `#[derive(Eq, Ord, PartialEq, PartialOrd)]`
-    |
- LL + #[derive(Eq, Ord, PartialEq, PartialOrd)]
- LL | pub struct NoDerives;
-    |
+    = note: the method was found for
+            - `Object<T>`
68 
- error[E0599]: the method `use_ord_and_partial_ord` exists for struct `Object<NoDerives>`, but its trait bounds were not satisfied
+ error[E0599]: no method named `use_ord_and_partial_ord` found for struct `Object<NoDerives>` in the current scope
70   --> $DIR/issue-91550.rs:28:9
71    |
- LL | pub struct NoDerives;
-    | -------------------- doesn't satisfy `NoDerives: Ord` or `NoDerives: PartialOrd`
- LL |
75 LL | struct Object<T>(T);
76    | ---------------- method `use_ord_and_partial_ord` not found for this struct
77 ...

78 LL |     foo.use_ord_and_partial_ord();
-    |         ^^^^^^^^^^^^^^^^^^^^^^^ method cannot be called on `Object<NoDerives>` due to unsatisfied trait bounds
+    |         ^^^^^^^^^^^^^^^^^^^^^^^ method not found in `Object<NoDerives>`
80    |
- note: the following trait bounds were not satisfied:
-       `NoDerives: Ord`
-       `NoDerives: PartialOrd`
-   --> $DIR/issue-91550.rs:21:9
-    |
- LL | impl<T: Ord + PartialOrd> Object<T> {
-    |         ^^^   ^^^^^^^^^^  ---------
-    |         |     |
-    |         |     unsatisfied trait bound introduced here
-    |         unsatisfied trait bound introduced here
- help: consider annotating `NoDerives` with `#[derive(Eq, Ord, PartialEq, PartialOrd)]`
-    |
---
98 

Note: some mismatched output was normalized before being compared
-   --> /rustc/FAKE_PREFIX/library/std/src/collections/hash/set.rs:210:5
+ error[E0599]: no method named `insert` found for struct `HashSet<Value>` in the current scope
+ help: there is a method `iter` with a similar name, but with different arguments
+   --> $SRC_DIR/std/src/collections/hash/set.rs:LL:COL
+ error[E0599]: no method named `use_eq` found for struct `Object<NoDerives>` in the current scope
+    |         ^^^^^^ method not found in `Object<NoDerives>`
+    = note: the method was found for
+            - `Object<T>`
+ error[E0599]: no method named `use_ord` found for struct `Object<NoDerives>` in the current scope
+    |         ^^^^^^^ method not found in `Object<NoDerives>`
+    = note: the method was found for
+            - `Object<T>`
+ error[E0599]: no method named `use_ord_and_partial_ord` found for struct `Object<NoDerives>` in the current scope
+    |         ^^^^^^^^^^^^^^^^^^^^^^^ method not found in `Object<NoDerives>`
+    = note: the method was found for
+            - `Object<T>`


The actual stderr differed from the expected stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args derives/issue-91550.rs`

error: 1 errors occurred comparing output.
status: exit status: 1
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/aarch64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/derives/issue-91550.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/aarch64-unknown-linux-gnu/stage2" "--target=aarch64-unknown-linux-gnu" "--check-cfg" "cfg(test,FALSE)" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/aarch64-unknown-linux-gnu/test/ui/derives/issue-91550" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/aarch64-unknown-linux-gnu/native/rust-test-helpers"
stdout: none
--- stderr -------------------------------
error[E0599]: no method named `insert` found for struct `HashSet<Value>` in the current scope
##[error]  --> /checkout/tests/ui/derives/issue-91550.rs:8:8
   |
LL |     hs.insert(Value(0)); //~ ERROR
   |        ^^^^^^
   |
help: there is a method `iter` with a similar name, but with different arguments
  --> /rustc/FAKE_PREFIX/library/std/src/collections/hash/set.rs:210:5

error[E0599]: no method named `use_eq` found for struct `Object<NoDerives>` in the current scope
##[error]  --> /checkout/tests/ui/derives/issue-91550.rs:26:9
   |
LL | struct Object<T>(T);
   | ---------------- method `use_eq` not found for this struct
...
LL |     foo.use_eq(); //~ ERROR
   |         ^^^^^^ method not found in `Object<NoDerives>`
   |
   = note: the method was found for
           - `Object<T>`

error[E0599]: no method named `use_ord` found for struct `Object<NoDerives>` in the current scope
##[error]  --> /checkout/tests/ui/derives/issue-91550.rs:27:9
   |
LL | struct Object<T>(T);
   | ---------------- method `use_ord` not found for this struct
...
LL |     foo.use_ord(); //~ ERROR
   |         ^^^^^^^ method not found in `Object<NoDerives>`
   |
   = note: the method was found for
           - `Object<T>`

error[E0599]: no method named `use_ord_and_partial_ord` found for struct `Object<NoDerives>` in the current scope
##[error]  --> /checkout/tests/ui/derives/issue-91550.rs:28:9
   |
LL | struct Object<T>(T);
   | ---------------- method `use_ord_and_partial_ord` not found for this struct
...
LL |     foo.use_ord_and_partial_ord(); //~ ERROR
   |         ^^^^^^^^^^^^^^^^^^^^^^^ method not found in `Object<NoDerives>`
   |
   = note: the method was found for
           - `Object<T>`

error: aborting due to 4 previous errors
---
---- [ui] tests/ui/generic-associated-types/issue-119942-unsatisified-gat-bound-during-assoc-ty-selection.rs stdout ----
Saved the actual stderr to `/checkout/obj/build/aarch64-unknown-linux-gnu/test/ui/generic-associated-types/issue-119942-unsatisified-gat-bound-during-assoc-ty-selection/issue-119942-unsatisified-gat-bound-during-assoc-ty-selection.stderr`
diff of stderr:

15 LL |     type Pointer<T>: Deref<Target = T> + ?Sized;
16    |                                        ++++++++
17 
- error[E0599]: the variant or associated item `new` exists for enum `Node<i32, RcFamily>`, but its trait bounds were not satisfied
+ error[E0599]: no variant or associated item named `new` found for enum `Node<i32, RcFamily>` in the current scope
19   --> $DIR/issue-119942-unsatisified-gat-bound-during-assoc-ty-selection.rs:31:35
20    |
21 LL | enum Node<T, P: PointerFamily> {

22    | ------------------------------ variant or associated item `new` not found for this enum
23 ...
24 LL |     let mut list = RcNode::<i32>::new();
-    |                                   ^^^ variant or associated item cannot be called on `Node<i32, RcFamily>` due to unsatisfied trait bounds
+    |                                   ^^^ variant or associated item not found in `Node<i32, RcFamily>`
26    |
- note: trait bound `(dyn Deref<Target = Node<i32, RcFamily>> + 'static): Sized` was not satisfied
-   --> $DIR/issue-119942-unsatisified-gat-bound-during-assoc-ty-selection.rs:23:29
-    |
- LL | impl<T, P: PointerFamily> Node<T, P>
-    |                           ----------
- LL | where
- LL |     P::Pointer<Node<T, P>>: Sized,
-    |                             ^^^^^ unsatisfied trait bound introduced here
+    = note: the variant or associated item was found for
+            - `Node<T, P>`
35 
36 error: aborting due to 2 previous errors
37 


The actual stderr differed from the expected stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args generic-associated-types/issue-119942-unsatisified-gat-bound-during-assoc-ty-selection.rs`

error: 1 errors occurred comparing output.
status: exit status: 1
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/aarch64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/generic-associated-types/issue-119942-unsatisified-gat-bound-during-assoc-ty-selection.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/aarch64-unknown-linux-gnu/stage2" "--target=aarch64-unknown-linux-gnu" "--check-cfg" "cfg(test,FALSE)" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/aarch64-unknown-linux-gnu/test/ui/generic-associated-types/issue-119942-unsatisified-gat-bound-during-assoc-ty-selection" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/aarch64-unknown-linux-gnu/native/rust-test-helpers"
stdout: none
--- stderr -------------------------------
error[E0277]: the size for values of type `(dyn Deref<Target = T> + 'static)` cannot be known at compilation time
##[error]  --> /checkout/tests/ui/generic-associated-types/issue-119942-unsatisified-gat-bound-during-assoc-ty-selection.rs:10:23
   |
LL |     type Pointer<T> = dyn Deref<Target = T>;
   |                       ^^^^^^^^^^^^^^^^^^^^^ doesn't have a size known at compile-time
   |
   = help: the trait `Sized` is not implemented for `(dyn Deref<Target = T> + 'static)`
note: required by a bound in `PointerFamily::Pointer`
  --> /checkout/tests/ui/generic-associated-types/issue-119942-unsatisified-gat-bound-during-assoc-ty-selection.rs:4:5
   |
LL |     type Pointer<T>: Deref<Target = T>;
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `PointerFamily::Pointer`
help: consider relaxing the implicit `Sized` restriction
   |
LL |     type Pointer<T>: Deref<Target = T> + ?Sized;
   |                                        ++++++++

error[E0599]: no variant or associated item named `new` found for enum `Node<i32, RcFamily>` in the current scope
##[error]  --> /checkout/tests/ui/generic-associated-types/issue-119942-unsatisified-gat-bound-during-assoc-ty-selection.rs:31:35
   |
LL | enum Node<T, P: PointerFamily> {
   | ------------------------------ variant or associated item `new` not found for this enum
...
LL |     let mut list = RcNode::<i32>::new();
   |                                   ^^^ variant or associated item not found in `Node<i32, RcFamily>`
   |
   = note: the variant or associated item was found for
           - `Node<T, P>`

error: aborting due to 2 previous errors

Some errors have detailed explanations: E0277, E0599.
For more information about an error, try `rustc --explain E0277`.
------------------------------------------


---- [ui] tests/ui/impl-trait/issues/issue-62742.rs stdout ----
Saved the actual stderr to `/checkout/obj/build/aarch64-unknown-linux-gnu/test/ui/impl-trait/issues/issue-62742/issue-62742.stderr`
diff of stderr:

12 LL | pub struct SafeImpl<T: ?Sized, A: Raw<T>>(PhantomData<(A, T)>);
13    |                                   ^^^^^^ required by this bound in `SafeImpl`
14 
- error[E0599]: the function or associated item `foo` exists for struct `SafeImpl<_, RawImpl<_>>`, but its trait bounds were not satisfied
+ error[E0599]: no function or associated item named `foo` found for struct `SafeImpl<_, RawImpl<_>>` in the current scope
16   --> $DIR/issue-62742.rs:4:16
17    |
18 LL |     WrongImpl::foo(0i32);

-    |                ^^^ function or associated item cannot be called on `SafeImpl<_, RawImpl<_>>` due to unsatisfied trait bounds
+    |                ^^^ function or associated item not found in `SafeImpl<_, RawImpl<_>>`
20 ...
- LL | pub struct RawImpl<T>(PhantomData<T>);
-    | --------------------- doesn't satisfy `RawImpl<_>: Raw<_>`
- ...
24 LL | pub struct SafeImpl<T: ?Sized, A: Raw<T>>(PhantomData<(A, T)>);
25    | ----------------------------------------- function or associated item `foo` not found for this struct
26    |

- note: trait bound `RawImpl<_>: Raw<_>` was not satisfied
-   --> $DIR/issue-62742.rs:35:20
-    |
- LL | impl<T: ?Sized, A: Raw<T>> SafeImpl<T, A> {
-    |                    ^^^^^^  --------------
-    |                    |
-    |                    unsatisfied trait bound introduced here
- note: the trait `Raw` must be implemented
-   --> $DIR/issue-62742.rs:19:1
-    |
- LL | pub trait Raw<T: ?Sized> {
-    | ^^^^^^^^^^^^^^^^^^^^^^^^
+    = note: the function or associated item was found for
+            - `SafeImpl<T, A>`
39 
40 error[E0277]: the trait bound `RawImpl<()>: Raw<()>` is not satisfied
41   --> $DIR/issue-62742.rs:10:5

52 LL | pub struct SafeImpl<T: ?Sized, A: Raw<T>>(PhantomData<(A, T)>);
53    |                                   ^^^^^^ required by this bound in `SafeImpl`
54 
- error[E0599]: the function or associated item `foo` exists for struct `SafeImpl<(), RawImpl<()>>`, but its trait bounds were not satisfied
+ error[E0599]: no function or associated item named `foo` found for struct `SafeImpl<(), RawImpl<()>>` in the current scope
56   --> $DIR/issue-62742.rs:10:22
57    |
58 LL |     WrongImpl::<()>::foo(0i32);

-    |                      ^^^ function or associated item cannot be called on `SafeImpl<(), RawImpl<()>>` due to unsatisfied trait bounds
+    |                      ^^^ function or associated item not found in `SafeImpl<(), RawImpl<()>>`
60 ...
- LL | pub struct RawImpl<T>(PhantomData<T>);
-    | --------------------- doesn't satisfy `RawImpl<()>: Raw<()>`
- ...
64 LL | pub struct SafeImpl<T: ?Sized, A: Raw<T>>(PhantomData<(A, T)>);
65    | ----------------------------------------- function or associated item `foo` not found for this struct
66    |

- note: trait bound `RawImpl<()>: Raw<()>` was not satisfied
-   --> $DIR/issue-62742.rs:35:20
-    |
- LL | impl<T: ?Sized, A: Raw<T>> SafeImpl<T, A> {
-    |                    ^^^^^^  --------------
-    |                    |
-    |                    unsatisfied trait bound introduced here
- note: the trait `Raw` must be implemented
-   --> $DIR/issue-62742.rs:19:1
---
To only update this specific test, also pass `--test-args impl-trait/issues/issue-62742.rs`

error: 1 errors occurred comparing output.
status: exit status: 1
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/aarch64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/impl-trait/issues/issue-62742.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/aarch64-unknown-linux-gnu/stage2" "--target=aarch64-unknown-linux-gnu" "--check-cfg" "cfg(test,FALSE)" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/aarch64-unknown-linux-gnu/test/ui/impl-trait/issues/issue-62742" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/aarch64-unknown-linux-gnu/native/rust-test-helpers"
stdout: none
--- stderr -------------------------------
error[E0277]: the trait bound `RawImpl<_>: Raw<_>` is not satisfied
##[error]  --> /checkout/tests/ui/impl-trait/issues/issue-62742.rs:4:5
   |
LL |     WrongImpl::foo(0i32);
   |     ^^^^^^^^^ the trait `Raw<_>` is not implemented for `RawImpl<_>`
   |
   = help: the trait `Raw<_>` is not implemented for `RawImpl<_>`
           but trait `Raw<[_]>` is implemented for it
note: required by a bound in `SafeImpl`
  --> /checkout/tests/ui/impl-trait/issues/issue-62742.rs:33:35
   |
LL | pub struct SafeImpl<T: ?Sized, A: Raw<T>>(PhantomData<(A, T)>);
   |                                   ^^^^^^ required by this bound in `SafeImpl`

error[E0599]: no function or associated item named `foo` found for struct `SafeImpl<_, RawImpl<_>>` in the current scope
##[error]  --> /checkout/tests/ui/impl-trait/issues/issue-62742.rs:4:16
   |
LL |     WrongImpl::foo(0i32);
   |                ^^^ function or associated item not found in `SafeImpl<_, RawImpl<_>>`
...
LL | pub struct SafeImpl<T: ?Sized, A: Raw<T>>(PhantomData<(A, T)>);
   | ----------------------------------------- function or associated item `foo` not found for this struct
   |
   = note: the function or associated item was found for
           - `SafeImpl<T, A>`

error[E0277]: the trait bound `RawImpl<()>: Raw<()>` is not satisfied
##[error]  --> /checkout/tests/ui/impl-trait/issues/issue-62742.rs:10:5
   |
LL |     WrongImpl::<()>::foo(0i32);
   |     ^^^^^^^^^^^^^^^ the trait `Raw<()>` is not implemented for `RawImpl<()>`
   |
   = help: the trait `Raw<()>` is not implemented for `RawImpl<()>`
           but trait `Raw<[()]>` is implemented for it
   = help: for that trait implementation, expected `[()]`, found `()`
note: required by a bound in `SafeImpl`
  --> /checkout/tests/ui/impl-trait/issues/issue-62742.rs:33:35
   |
LL | pub struct SafeImpl<T: ?Sized, A: Raw<T>>(PhantomData<(A, T)>);
   |                                   ^^^^^^ required by this bound in `SafeImpl`

error[E0599]: no function or associated item named `foo` found for struct `SafeImpl<(), RawImpl<()>>` in the current scope
##[error]  --> /checkout/tests/ui/impl-trait/issues/issue-62742.rs:10:22
   |
LL |     WrongImpl::<()>::foo(0i32);
   |                      ^^^ function or associated item not found in `SafeImpl<(), RawImpl<()>>`
...
LL | pub struct SafeImpl<T: ?Sized, A: Raw<T>>(PhantomData<(A, T)>);
   | ----------------------------------------- function or associated item `foo` not found for this struct
   |
   = note: the function or associated item was found for
           - `SafeImpl<T, A>`

error: aborting due to 4 previous errors
---
---- [ui] tests/ui/issues/issue-50264-inner-deref-trait/option-as_deref.rs stdout ----
Saved the actual stderr to `/checkout/obj/build/aarch64-unknown-linux-gnu/test/ui/issues/issue-50264-inner-deref-trait/option-as_deref/option-as_deref.stderr`
diff of stderr:

- error[E0599]: the method `as_deref` exists for enum `Option<{integer}>`, but its trait bounds were not satisfied
+ error[E0599]: no method named `as_deref` found for enum `Option<{integer}>` in the current scope
2   --> $DIR/option-as_deref.rs:2:29
3    |
4 LL |     let _result = &Some(42).as_deref();

5    |                             ^^^^^^^^
6    |
-    = note: the following trait bounds were not satisfied:
-            `{integer}: Deref`
+ note: method is available for `Option<&mut {integer}>`
+   --> $SRC_DIR/core/src/option.rs:LL:COL
+ note: method is available for `Option<&{integer}>`
+   --> $SRC_DIR/core/src/option.rs:LL:COL
+ help: there is a method `as_ref` with a similar name
+    |
+ LL -     let _result = &Some(42).as_deref();
+ LL +     let _result = &Some(42).as_ref();
+    |
9 
10 error: aborting due to 1 previous error
11 

Note: some mismatched output was normalized before being compared
-   --> /rustc/FAKE_PREFIX/library/core/src/option.rs:1360:5
-   --> /rustc/FAKE_PREFIX/library/core/src/option.rs:1360:5
+ error[E0599]: no method named `as_deref` found for enum `Option<{integer}>` in the current scope
+ note: method is available for `Option<&mut {integer}>`
+   --> $SRC_DIR/core/src/option.rs:LL:COL
+ note: method is available for `Option<&{integer}>`
+   --> $SRC_DIR/core/src/option.rs:LL:COL
+ help: there is a method `as_ref` with a similar name
+    |
+ LL -     let _result = &Some(42).as_deref();
+ LL +     let _result = &Some(42).as_ref();
+    |


The actual stderr differed from the expected stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args issues/issue-50264-inner-deref-trait/option-as_deref.rs`

error: 1 errors occurred comparing output.
status: exit status: 1
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/aarch64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/issues/issue-50264-inner-deref-trait/option-as_deref.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/aarch64-unknown-linux-gnu/stage2" "--target=aarch64-unknown-linux-gnu" "--check-cfg" "cfg(test,FALSE)" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/aarch64-unknown-linux-gnu/test/ui/issues/issue-50264-inner-deref-trait/option-as_deref" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/aarch64-unknown-linux-gnu/native/rust-test-helpers"
stdout: none
--- stderr -------------------------------
error[E0599]: no method named `as_deref` found for enum `Option<{integer}>` in the current scope
##[error]  --> /checkout/tests/ui/issues/issue-50264-inner-deref-trait/option-as_deref.rs:2:29
   |
LL |     let _result = &Some(42).as_deref();
   |                             ^^^^^^^^
   |
note: method is available for `Option<&mut {integer}>`
  --> /rustc/FAKE_PREFIX/library/core/src/option.rs:1360:5
note: method is available for `Option<&{integer}>`
  --> /rustc/FAKE_PREFIX/library/core/src/option.rs:1360:5
help: there is a method `as_ref` with a similar name
   |
LL -     let _result = &Some(42).as_deref();
LL +     let _result = &Some(42).as_ref();
   |

error: aborting due to 1 previous error

For more information about this error, try `rustc --explain E0599`.
------------------------------------------


---- [ui] tests/ui/issues/issue-50264-inner-deref-trait/option-as_deref_mut.rs stdout ----
Saved the actual stderr to `/checkout/obj/build/aarch64-unknown-linux-gnu/test/ui/issues/issue-50264-inner-deref-trait/option-as_deref_mut/option-as_deref_mut.stderr`
diff of stderr:

- error[E0599]: the method `as_deref_mut` exists for enum `Option<{integer}>`, but its trait bounds were not satisfied
+ error[E0599]: no method named `as_deref_mut` found for enum `Option<{integer}>` in the current scope
2   --> $DIR/option-as_deref_mut.rs:2:33
3    |
4 LL |     let _result = &mut Some(42).as_deref_mut();

5    |                                 ^^^^^^^^^^^^
6    |
-    = note: the following trait bounds were not satisfied:
-            `{integer}: Deref`
+ note: method is available for `Option<&mut {integer}>`
+   --> $SRC_DIR/core/src/option.rs:LL:COL
+ note: method is available for `Option<&{integer}>`
+   --> $SRC_DIR/core/src/option.rs:LL:COL
+ help: there is a method `as_mut` with a similar name
+    |
+ LL -     let _result = &mut Some(42).as_deref_mut();
+ LL +     let _result = &mut Some(42).as_mut();
+    |
9 
- error: aborting due to 1 previous error
+ error[E0277]: the trait bound `&{integer}: DerefMut` is not satisfied
+   --> $DIR/option-as_deref_mut.rs:2:33
+    |
+ LL |     let _result = &mut Some(42).as_deref_mut();
+    |                                 ^^^^^^^^^^^^ the trait `DerefMut` is not implemented for `&{integer}`
+    |
+ note: required by a bound in `Option::<T>::as_deref_mut`
+   --> $SRC_DIR/core/src/option.rs:LL:COL
+ help: consider mutably borrowing here
+    |
+ LL |     let _result = &mut (&mut Some(42)).as_deref_mut();
+    |                        +++++         +
11 
- For more information about this error, try `rustc --explain E0599`.
+ error: aborting due to 2 previous errors
+ 
---
-   --> /rustc/FAKE_PREFIX/library/core/src/option.rs:1383:5
-   --> /rustc/FAKE_PREFIX/library/core/src/option.rs:1383:5
-   --> /checkout/tests/ui/issues/issue-50264-inner-deref-trait/option-as_deref_mut.rs:2:33
-   --> /rustc/FAKE_PREFIX/library/core/src/option.rs:1383:5
+ error[E0599]: no method named `as_deref_mut` found for enum `Option<{integer}>` in the current scope
+ note: method is available for `Option<&mut {integer}>`
+   --> $SRC_DIR/core/src/option.rs:LL:COL
+ note: method is available for `Option<&{integer}>`
+   --> $SRC_DIR/core/src/option.rs:LL:COL
+ help: there is a method `as_mut` with a similar name
+    |
+ LL -     let _result = &mut Some(42).as_deref_mut();
+ LL +     let _result = &mut Some(42).as_mut();
+    |
+ error[E0277]: the trait bound `&{integer}: DerefMut` is not satisfied
+   --> $DIR/option-as_deref_mut.rs:2:33
+    |
+ LL |     let _result = &mut Some(42).as_deref_mut();
+    |                                 ^^^^^^^^^^^^ the trait `DerefMut` is not implemented for `&{integer}`
+    |
+ note: required by a bound in `Option::<T>::as_deref_mut`
+   --> $SRC_DIR/core/src/option.rs:LL:COL
+ help: consider mutably borrowing here
+    |
+ LL |     let _result = &mut (&mut Some(42)).as_deref_mut();
+    |                        +++++         +
+ error: aborting due to 2 previous errors
+ 
+ Some errors have detailed explanations: E0277, E0599.
+ For more information about an error, try `rustc --explain E0277`.
---
To only update this specific test, also pass `--test-args issues/issue-50264-inner-deref-trait/option-as_deref_mut.rs`

error: 1 errors occurred comparing output.
status: exit status: 1
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/aarch64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/issues/issue-50264-inner-deref-trait/option-as_deref_mut.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/aarch64-unknown-linux-gnu/stage2" "--target=aarch64-unknown-linux-gnu" "--check-cfg" "cfg(test,FALSE)" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/aarch64-unknown-linux-gnu/test/ui/issues/issue-50264-inner-deref-trait/option-as_deref_mut" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/aarch64-unknown-linux-gnu/native/rust-test-helpers"
stdout: none
--- stderr -------------------------------
error[E0599]: no method named `as_deref_mut` found for enum `Option<{integer}>` in the current scope
##[error]  --> /checkout/tests/ui/issues/issue-50264-inner-deref-trait/option-as_deref_mut.rs:2:33
   |
---
LL -     let _result = &mut Some(42).as_deref_mut();
LL +     let _result = &mut Some(42).as_mut();
   |

error[E0277]: the trait bound `&{integer}: DerefMut` is not satisfied
##[error]  --> /checkout/tests/ui/issues/issue-50264-inner-deref-trait/option-as_deref_mut.rs:2:33
   |
LL |     let _result = &mut Some(42).as_deref_mut();
   |                                 ^^^^^^^^^^^^ the trait `DerefMut` is not implemented for `&{integer}`
   |
note: required by a bound in `Option::<T>::as_deref_mut`
  --> /rustc/FAKE_PREFIX/library/core/src/option.rs:1383:5
help: consider mutably borrowing here
   |
LL |     let _result = &mut (&mut Some(42)).as_deref_mut();
   |                        +++++         +

error: aborting due to 2 previous errors

Some errors have detailed explanations: E0277, E0599.
---
---- [ui] tests/ui/issues/issue-50264-inner-deref-trait/result-as_deref.rs stdout ----
Saved the actual stderr to `/checkout/obj/build/aarch64-unknown-linux-gnu/test/ui/issues/issue-50264-inner-deref-trait/result-as_deref/result-as_deref.stderr`
diff of stderr:

- error[E0599]: the method `as_deref` exists for enum `Result<{integer}, _>`, but its trait bounds were not satisfied
+ error[E0599]: no method named `as_deref` found for enum `Result<{integer}, _>` in the current scope
2   --> $DIR/result-as_deref.rs:2:27
3    |
4 LL |     let _result = &Ok(42).as_deref();

5    |                           ^^^^^^^^
6    |
-    = note: the following trait bounds were not satisfied:
-            `{integer}: Deref`
+ help: there is a method `as_ref` with a similar name
+    |
+ LL -     let _result = &Ok(42).as_deref();
+ LL +     let _result = &Ok(42).as_ref();
+    |
9 
10 error: aborting due to 1 previous error
11 


The actual stderr differed from the expected stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args issues/issue-50264-inner-deref-trait/result-as_deref.rs`

error: 1 errors occurred comparing output.
status: exit status: 1
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/aarch64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/issues/issue-50264-inner-deref-trait/result-as_deref.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/aarch64-unknown-linux-gnu/stage2" "--target=aarch64-unknown-linux-gnu" "--check-cfg" "cfg(test,FALSE)" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/aarch64-unknown-linux-gnu/test/ui/issues/issue-50264-inner-deref-trait/result-as_deref" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/aarch64-unknown-linux-gnu/native/rust-test-helpers"
stdout: none
--- stderr -------------------------------
error[E0599]: no method named `as_deref` found for enum `Result<{integer}, _>` in the current scope
##[error]  --> /checkout/tests/ui/issues/issue-50264-inner-deref-trait/result-as_deref.rs:2:27
   |
LL |     let _result = &Ok(42).as_deref();
   |                           ^^^^^^^^
   |
help: there is a method `as_ref` with a similar name
   |
LL -     let _result = &Ok(42).as_deref();
LL +     let _result = &Ok(42).as_ref();
   |

error: aborting due to 1 previous error

For more information about this error, try `rustc --explain E0599`.
------------------------------------------


---- [ui] tests/ui/issues/issue-50264-inner-deref-trait/result-as_deref_mut.rs stdout ----
Saved the actual stderr to `/checkout/obj/build/aarch64-unknown-linux-gnu/test/ui/issues/issue-50264-inner-deref-trait/result-as_deref_mut/result-as_deref_mut.stderr`
diff of stderr:

- error[E0599]: the method `as_deref_mut` exists for enum `Result<{integer}, _>`, but its trait bounds were not satisfied
+ error[E0599]: no method named `as_deref_mut` found for enum `Result<{integer}, _>` in the current scope
2   --> $DIR/result-as_deref_mut.rs:2:31
3    |
4 LL |     let _result = &mut Ok(42).as_deref_mut();

5    |                               ^^^^^^^^^^^^
6    |
-    = note: the following trait bounds were not satisfied:
-            `{integer}: Deref`
+ help: there is a method `as_mut` with a similar name
+    |
+ LL -     let _result = &mut Ok(42).as_deref_mut();
+ LL +     let _result = &mut Ok(42).as_mut();
+    |
9 
10 error: aborting due to 1 previous error
11 


The actual stderr differed from the expected stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args issues/issue-50264-inner-deref-trait/result-as_deref_mut.rs`

error: 1 errors occurred comparing output.
status: exit status: 1
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/aarch64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/issues/issue-50264-inner-deref-trait/result-as_deref_mut.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/aarch64-unknown-linux-gnu/stage2" "--target=aarch64-unknown-linux-gnu" "--check-cfg" "cfg(test,FALSE)" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/aarch64-unknown-linux-gnu/test/ui/issues/issue-50264-inner-deref-trait/result-as_deref_mut" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/aarch64-unknown-linux-gnu/native/rust-test-helpers"
stdout: none
--- stderr -------------------------------
error[E0599]: no method named `as_deref_mut` found for enum `Result<{integer}, _>` in the current scope
##[error]  --> /checkout/tests/ui/issues/issue-50264-inner-deref-trait/result-as_deref_mut.rs:2:31
   |
LL |     let _result = &mut Ok(42).as_deref_mut();
   |                               ^^^^^^^^^^^^
   |
help: there is a method `as_mut` with a similar name
   |
LL -     let _result = &mut Ok(42).as_deref_mut();
LL +     let _result = &mut Ok(42).as_mut();
   |

error: aborting due to 1 previous error

For more information about this error, try `rustc --explain E0599`.
------------------------------------------


---- [ui] tests/ui/methods/bad-wf-when-selecting-method.rs stdout ----
Saved the actual stderr to `/checkout/obj/build/aarch64-unknown-linux-gnu/test/ui/methods/bad-wf-when-selecting-method/bad-wf-when-selecting-method.stderr`
diff of stderr:

32 LL | fn test<T: Wf>(t: T) {
33    |          ++++
34 
- error[E0599]: the method `needs_sized` exists for struct `Wrapper<T, _>`, but its trait bounds were not satisfied
+ error[E0599]: no method named `needs_sized` found for struct `Wrapper` in the current scope
36   --> $DIR/bad-wf-when-selecting-method.rs:12:16
37    |
38 LL | struct Wrapper<T: Wf<Assoc = U>, U>(T);

39    | ----------------------------------- method `needs_sized` not found for this struct
40 ...
41 LL |     Wrapper(t).needs_sized();
-    |                ^^^^^^^^^^^ method cannot be called on `Wrapper<T, _>` due to unsatisfied trait bounds
+    |                ^^^^^^^^^^^ method not found in `Wrapper<T, _>`
43    |
-    = note: the following trait bounds were not satisfied:
-            `T: Wf`
- help: consider restricting the type parameter to satisfy the trait bound
+    = help: items from traits can only be used if the trait is implemented and in scope
---
To only update this specific test, also pass `--test-args methods/bad-wf-when-selecting-method.rs`

error: 1 errors occurred comparing output.
status: exit status: 1
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/aarch64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/methods/bad-wf-when-selecting-method.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/aarch64-unknown-linux-gnu/stage2" "--target=aarch64-unknown-linux-gnu" "--check-cfg" "cfg(test,FALSE)" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/aarch64-unknown-linux-gnu/test/ui/methods/bad-wf-when-selecting-method" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/aarch64-unknown-linux-gnu/native/rust-test-helpers"
stdout: none
--- stderr -------------------------------
error[E0277]: the trait bound `T: Wf` is not satisfied
##[error]  --> /checkout/tests/ui/methods/bad-wf-when-selecting-method.rs:12:13
   |
LL |     Wrapper(t).needs_sized();
   |     ------- ^ the trait `Wf` is not implemented for `T`
   |     |
   |     required by a bound introduced by this call
   |
note: required by a bound in `Wrapper`
  --> /checkout/tests/ui/methods/bad-wf-when-selecting-method.rs:5:19
   |
LL | struct Wrapper<T: Wf<Assoc = U>, U>(T);
   |                   ^^^^^^^^^^^^^ required by this bound in `Wrapper`
help: consider restricting type parameter `T` with trait `Wf`
   |
LL | fn test<T: Wf>(t: T) {
   |          ++++

error[E0277]: the trait bound `T: Wf` is not satisfied
##[error]  --> /checkout/tests/ui/methods/bad-wf-when-selecting-method.rs:12:5
   |
LL |     Wrapper(t).needs_sized();
   |     ^^^^^^^^^^ the trait `Wf` is not implemented for `T`
   |
note: required by a bound in `Wrapper`
  --> /checkout/tests/ui/methods/bad-wf-when-selecting-method.rs:5:19
   |
LL | struct Wrapper<T: Wf<Assoc = U>, U>(T);
   |                   ^^^^^^^^^^^^^ required by this bound in `Wrapper`
help: consider restricting type parameter `T` with trait `Wf`
   |
LL | fn test<T: Wf>(t: T) {
   |          ++++

error[E0599]: no method named `needs_sized` found for struct `Wrapper` in the current scope
##[error]  --> /checkout/tests/ui/methods/bad-wf-when-selecting-method.rs:12:16
   |
LL | struct Wrapper<T: Wf<Assoc = U>, U>(T);
   | ----------------------------------- method `needs_sized` not found for this struct
...
LL |     Wrapper(t).needs_sized();
   |                ^^^^^^^^^^^ method not found in `Wrapper<T, _>`
   |
   = help: items from traits can only be used if the trait is implemented and in scope
note: `Trait` defines an item `needs_sized`, perhaps you need to implement it
  --> /checkout/tests/ui/methods/bad-wf-when-selecting-method.rs:7:1
   |
---

79 LL |     a.not_found();
80    |       ^^^^^^^^^ method not found in `Vec<{integer}>`
81 
- error[E0599]: the method `method` exists for struct `Struct<f64>`, but its trait bounds were not satisfied
+ error[E0599]: no method named `method` found for struct `Struct<f64>` in the current scope
83   --> $DIR/method-not-found-generic-arg-elision.rs:104:7
84    |
85 LL | struct Struct<T> {

86    | ---------------- method `method` not found for this struct
87 ...
88 LL |     s.method();
-    |       ^^^^^^ method cannot be called on `Struct<f64>` due to unsatisfied trait bounds
+    |       ^^^^^^ method not found in `Struct<f64>`
90    |
- note: the following trait bounds were not satisfied:
-       `f64: Eq`
-       `f64: Ord`
-   --> $DIR/method-not-found-generic-arg-elision.rs:74:36
-    |
- LL | impl<T: Clone + Copy + PartialEq + Eq + PartialOrd + Ord> Struct<T> {
-    |                                    ^^                ^^^  ---------
-    |                                    |                 |
-    |                                    |                 unsatisfied trait bound introduced here
-    |                                    unsatisfied trait bound introduced here
+    = note: the method was found for
---
To only update this specific test, also pass `--test-args methods/method-not-found-generic-arg-elision.rs`

error: 1 errors occurred comparing output.
status: exit status: 1
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/aarch64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/methods/method-not-found-generic-arg-elision.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/aarch64-unknown-linux-gnu/stage2" "--target=aarch64-unknown-linux-gnu" "--check-cfg" "cfg(test,FALSE)" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/aarch64-unknown-linux-gnu/test/ui/methods/method-not-found-generic-arg-elision" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/aarch64-unknown-linux-gnu/native/rust-test-helpers"
stdout: none
--- stderr -------------------------------
error[E0599]: no method named `distance` found for struct `Point<i32>` in the current scope
##[error]  --> /checkout/tests/ui/methods/method-not-found-generic-arg-elision.rs:82:23
   |
LL | struct Point<T> {
   | --------------- method `distance` not found for this struct
...
LL |     let d = point_i32.distance();
   |                       ^^^^^^^^ method not found in `Point<i32>`
   |
   = note: the method was found for
           - `Point<f64>`

error[E0599]: no method named `other` found for struct `Point` in the current scope
##[error]  --> /checkout/tests/ui/methods/method-not-found-generic-arg-elision.rs:84:23
   |
LL | struct Point<T> {
   | --------------- method `other` not found for this struct
...
LL |     let d = point_i32.other();
   |                       ^^^^^ method not found in `Point<i32>`

error[E0599]: no method named `extend` found for struct `Map` in the current scope
##[error]  --> /checkout/tests/ui/methods/method-not-found-generic-arg-elision.rs:87:67
   |
LL |     v.iter().map(Box::new(|x| x * x) as Box<dyn Fn(&i32) -> i32>).extend(std::iter::once(100));
   |                                                                   ^^^^^^ method not found in `Map<std::slice::Iter<'_, i32>, Box<dyn for<'a> Fn(&'a i32) -> i32>>`

error[E0599]: no method named `method` found for struct `Wrapper<bool>` in the current scope
##[error]  --> /checkout/tests/ui/methods/method-not-found-generic-arg-elision.rs:90:13
   |
LL | struct Wrapper<T>(T);
---
...
LL |     wrapper.other();
   |             ^^^^^ method not found in `Wrapper<bool>`

error[E0599]: no method named `method` found for struct `Wrapper2<'_, bool, 3>` in the current scope
##[error]  --> /checkout/tests/ui/methods/method-not-found-generic-arg-elision.rs:96:13
   |
LL | struct Wrapper2<'a, T, const C: usize> {
   | -------------------------------------- method `method` not found for this struct
...
LL |     wrapper.method();
   |             ^^^^^^ method not found in `Wrapper2<'_, bool, 3>`
   |
   = note: the method was found for
           - `Wrapper2<'a, i16, C>`
           - `Wrapper2<'a, i32, C>`
           - `Wrapper2<'a, i8, C>`

error[E0599]: no method named `other` found for struct `Wrapper2` in the current scope
##[error]  --> /checkout/tests/ui/methods/method-not-found-generic-arg-elision.rs:98:13
   |
LL | struct Wrapper2<'a, T, const C: usize> {
---
   |
LL |     a.not_found();
   |       ^^^^^^^^^ method not found in `Vec<{integer}>`

error[E0599]: no method named `method` found for struct `Struct<f64>` in the current scope
##[error]  --> /checkout/tests/ui/methods/method-not-found-generic-arg-elision.rs:104:7
   |
LL | struct Struct<T> {
   | ---------------- method `method` not found for this struct
...
---
---- [ui] tests/ui/missing-trait-bounds/issue-35677.rs stdout ----
Saved the actual stderr to `/checkout/obj/build/aarch64-unknown-linux-gnu/test/ui/missing-trait-bounds/issue-35677/issue-35677.stderr`
diff of stderr:

- error[E0599]: the method `is_subset` exists for reference `&HashSet<T>`, but its trait bounds were not satisfied
+ error[E0599]: no method named `is_subset` found for reference `&HashSet<T>` in the current scope
2   --> $DIR/issue-35677.rs:7:10
3    |
4 LL |     this.is_subset(other)

-    |          ^^^^^^^^^ method cannot be called on `&HashSet<T>` due to unsatisfied trait bounds
-    |
-    = note: the following trait bounds were not satisfied:
-            `T: Eq`
-            `T: Hash`
- help: consider restricting the type parameters to satisfy the trait bounds
-    |
- LL | fn is_subset<T>(this: &HashSet<T>, other: &HashSet<T>) -> bool where T: Eq, T: Hash {
-    |                                                                ++++++++++++++++++++
+    |          ^^^^^^^^^ method not found in `&HashSet<T>`
14 
15 error: aborting due to 1 previous error
16 
---

3 use std::collections::HashSet;
4 use std::hash::Hash;
5 
- fn is_subset<T>(this: &HashSet<T>, other: &HashSet<T>) -> bool where T: Eq, T: Hash {
+ fn is_subset<T>(this: &HashSet<T>, other: &HashSet<T>) -> bool {
7     this.is_subset(other)
8     //~^ ERROR the method
9 }


The actual fixed differed from the expected fixed
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args missing-trait-bounds/issue-35677.rs`

error: 2 errors occurred comparing output.
status: exit status: 1
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/aarch64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/missing-trait-bounds/issue-35677.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/aarch64-unknown-linux-gnu/stage2" "--target=aarch64-unknown-linux-gnu" "--check-cfg" "cfg(test,FALSE)" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/aarch64-unknown-linux-gnu/test/ui/missing-trait-bounds/issue-35677" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/aarch64-unknown-linux-gnu/native/rust-test-helpers"
stdout: none
--- stderr -------------------------------
error[E0599]: no method named `is_subset` found for reference `&HashSet<T>` in the current scope
##[error]  --> /checkout/tests/ui/missing-trait-bounds/issue-35677.rs:7:10
   |
---

9       TcpStream::connect_timeout
10   --> $SRC_DIR/std/src/net/tcp.rs:LL:COL
11 
- error[E0599]: the function or associated item `new` exists for struct `Foo<u8>`, but its trait bounds were not satisfied
+ error[E0599]: no function or associated item named `new` found for struct `Foo<u8>` in the current scope
13   --> $DIR/suggest-builder-fn.rs:57:27
14    |
15 LL | struct Foo<T> {

16    | ------------- function or associated item `new` not found for this struct
---
To only update this specific test, also pass `--test-args resolve/suggest-builder-fn.rs`

error: 1 errors occurred comparing output.
status: exit status: 1
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/aarch64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/resolve/suggest-builder-fn.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/aarch64-unknown-linux-gnu/stage2" "--target=aarch64-unknown-linux-gnu" "--check-cfg" "cfg(test,FALSE)" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/aarch64-unknown-linux-gnu/test/ui/resolve/suggest-builder-fn" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/aarch64-unknown-linux-gnu/native/rust-test-helpers"
stdout: none
--- stderr -------------------------------
error[E0599]: no function or associated item named `new` found for struct `TcpStream` in the current scope
##[error]  --> /checkout/tests/ui/resolve/suggest-builder-fn.rs:52:29
   |
---
   |
LL | struct Bar;
   | ---------- function or associated item `new` not found for this struct
...
LL |     let _bar = Bar::new();
   |                     ^^^ function or associated item not found in `Bar`
   |
note: if you're trying to build a new `Bar` consider using one of the following associated functions:
      Bar::build
      SomeMod::<impl Bar>::build_public
  --> /checkout/tests/ui/resolve/suggest-builder-fn.rs:23:5
   |
LL |     fn build() -> Self {
   |     ^^^^^^^^^^^^^^^^^^
...
---

102    = note: expected reference `&Foo`
103                  found struct `Rc<Foo>`
104 
- error[E0599]: the method `get` exists for struct `Rc<Bar<_>>`, but its trait bounds were not satisfied
+ error[E0599]: no method named `get` found for struct `Rc<Bar<_>>` in the current scope
106   --> $DIR/arbitrary-self-from-method-substs.rs:100:7
107    |
- LL | struct Bar<R>(std::marker::PhantomData<R>);
-    | ------------- doesn't satisfy `Bar<_>: Deref`
- ...
111 LL |     t.get();
-    |       ^^^ method cannot be called on `Rc<Bar<_>>` due to unsatisfied trait bounds
+    |       ^^^ method not found in `Rc<Bar<_>>`
113    |
- note: the following trait bounds were not satisfied:
-       `<&Bar<_> as Deref>::Target = Bar<&Bar<_>>`
-       `<&Rc<Bar<_>> as Deref>::Target = Bar<&Rc<Bar<_>>>`
-       `<&mut Bar<_> as Deref>::Target = Bar<&mut Bar<_>>`
-       `<&mut Rc<Bar<_>> as Deref>::Target = Bar<&mut Rc<Bar<_>>>`
-       `<Rc<Bar<_>> as Deref>::Target = Bar<Rc<Bar<_>>>`
-       `Bar<_>: Deref`
-   --> $DIR/arbitrary-self-from-method-substs.rs:60:9
-    |
- LL | impl<R: std::ops::Deref<Target = Self>> Bar<R> {
-    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^  ------
-    |         |               |
-    |         |               unsatisfied trait bound introduced here
-    |         unsatisfied trait bound introduced here
- note: the trait `Deref` must be implemented
-   --> $SRC_DIR/core/src/ops/deref.rs:LL:COL
130    = help: items from traits can only be used if the trait is implemented and in scope
131    = note: the following trait defines an item `get`, perhaps you need to implement it:
132            candidate #1: `SliceIndex`

133 
- error[E0599]: the method `get` exists for reference `&Rc<Bar<_>>`, but its trait bounds were not satisfied
+ error[E0599]: no method named `get` found for reference `&Rc<Bar<_>>` in the current scope
135   --> $DIR/arbitrary-self-from-method-substs.rs:108:7
136    |
- LL | struct Bar<R>(std::marker::PhantomData<R>);
-    | ------------- doesn't satisfy `Bar<_>: Deref`
- ...
140 LL |     t.get();
-    |       ^^^ method cannot be called on `&Rc<Bar<_>>` due to unsatisfied trait bounds
+    |       ^^^ method not found in `&Rc<Bar<_>>`
142    |
- note: the following trait bounds were not satisfied:
-       `<&&Rc<Bar<_>> as Deref>::Target = Bar<&&Rc<Bar<_>>>`
-       `<&Bar<_> as Deref>::Target = Bar<&Bar<_>>`
-       `<&Rc<Bar<_>> as Deref>::Target = Bar<&Rc<Bar<_>>>`
-       `<&mut &Rc<Bar<_>> as Deref>::Target = Bar<&mut &Rc<Bar<_>>>`
-       `<&mut Bar<_> as Deref>::Target = Bar<&mut Bar<_>>`
-       `<&mut Rc<Bar<_>> as Deref>::Target = Bar<&mut Rc<Bar<_>>>`
-       `<Rc<Bar<_>> as Deref>::Target = Bar<Rc<Bar<_>>>`
-       `Bar<_>: Deref`
-   --> $DIR/arbitrary-self-from-method-substs.rs:60:9
-    |
- LL | impl<R: std::ops::Deref<Target = Self>> Bar<R> {
-    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^  ------
-    |         |               |
-    |         |               unsatisfied trait bound introduced here
-    |         unsatisfied trait bound introduced here
- note: the trait `Deref` must be implemented
---
To only update this specific test, also pass `--test-args self/arbitrary-self-from-method-substs.rs`

error in revision `default`: 1 errors occurred comparing output.
status: exit status: 1
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/aarch64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/self/arbitrary-self-from-method-substs.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/aarch64-unknown-linux-gnu/stage2" "--target=aarch64-unknown-linux-gnu" "--cfg" "default" "--check-cfg" "cfg(test,FALSE,default,feature)" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/aarch64-unknown-linux-gnu/test/ui/self/arbitrary-self-from-method-substs.default" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/aarch64-unknown-linux-gnu/native/rust-test-helpers"
stdout: none
--- stderr -------------------------------
error[E0801]: invalid generic `self` parameter type: `R`
##[error]  --> /checkout/tests/ui/self/arbitrary-self-from-method-substs.rs:9:43
   |
LL |     fn get<R: Deref<Target = Self>>(self: R) -> u32 {
   |                                           ^
   |
   = note: type of `self` must not be a method generic parameter type
   = help: use a concrete type such as `self`, `&self`, `&mut self`, `self: Box<Self>`, `self: Rc<Self>`, `self: Arc<Self>`, or `self: Pin<P>` (where P is one of the previous types except `Self`)

error[E0801]: invalid generic `self` parameter type: `&R`
##[error]  --> /checkout/tests/ui/self/arbitrary-self-from-method-substs.rs:13:44
   |
LL |     fn get1<R: Deref<Target = Self>>(self: &R) -> u32 {
   |                                            ^^
   |
   = note: type of `self` must not be a method generic parameter type
   = help: use a concrete type such as `self`, `&self`, `&mut self`, `self: Box<Self>`, `self: Rc<Self>`, `self: Arc<Self>`, or `self: Pin<P>` (where P is one of the previous types except `Self`)

error[E0801]: invalid generic `self` parameter type: `&mut R`
##[error]  --> /checkout/tests/ui/self/arbitrary-self-from-method-substs.rs:17:44
   |
LL |     fn get2<R: Deref<Target = Self>>(self: &mut R) -> u32 {
   |                                            ^^^^^^
   |
   = note: type of `self` must not be a method generic parameter type
   = help: use a concrete type such as `self`, `&self`, `&mut self`, `self: Box<Self>`, `self: Rc<Self>`, `self: Arc<Self>`, or `self: Pin<P>` (where P is one of the previous types except `Self`)

error[E0801]: invalid generic `self` parameter type: `Rc<R>`
##[error]  --> /checkout/tests/ui/self/arbitrary-self-from-method-substs.rs:21:44
   |
LL |     fn get3<R: Deref<Target = Self>>(self: std::rc::Rc<R>) -> u32 {
   |                                            ^^^^^^^^^^^^^^
   |
   = note: type of `self` must not be a method generic parameter type
   = help: use a concrete type such as `self`, `&self`, `&mut self`, `self: Box<Self>`, `self: Rc<Self>`, `self: Arc<Self>`, or `self: Pin<P>` (where P is one of the previous types except `Self`)

error[E0801]: invalid generic `self` parameter type: `&Rc<R>`
##[error]  --> /checkout/tests/ui/self/arbitrary-self-from-method-substs.rs:25:44
   |
LL |     fn get4<R: Deref<Target = Self>>(self: &std::rc::Rc<R>) -> u32 {
   |                                            ^^^^^^^^^^^^^^^
   |
   = note: type of `self` must not be a method generic parameter type
   = help: use a concrete type such as `self`, `&self`, `&mut self`, `self: Box<Self>`, `self: Rc<Self>`, `self: Arc<Self>`, or `self: Pin<P>` (where P is one of the previous types except `Self`)

error[E0801]: invalid generic `self` parameter type: `Rc<&R>`
##[error]  --> /checkout/tests/ui/self/arbitrary-self-from-method-substs.rs:29:44
   |
LL |     fn get5<R: Deref<Target = Self>>(self: std::rc::Rc<&R>) -> u32 {
   |                                            ^^^^^^^^^^^^^^^
   |
   = note: type of `self` must not be a method generic parameter type
   = help: use a concrete type such as `self`, `&self`, `&mut self`, `self: Box<Self>`, `self: Rc<Self>`, `self: Arc<Self>`, or `self: Pin<P>` (where P is one of the previous types except `Self`)

error[E0658]: `<FR as FindReceiver>::Receiver` cannot be used as the type of `self` without the `arbitrary_self_types` feature
##[error]  --> /checkout/tests/ui/self/arbitrary-self-from-method-substs.rs:33:37
   |
LL |     fn get6<FR: FindReceiver>(self: FR::Receiver, other: FR) -> u32 {
   |                                     ^^^^^^^^^^^^
   |
   = note: see issue #44874 <https://github.com/rust-lang/rust/issues/44874> for more information
   = help: add `#![feature(arbitrary_self_types)]` to the crate attributes to enable
   = note: this compiler was built on YYYY-MM-DD; consider upgrading it if it is out of date
   = help: consider changing to `self`, `&self`, `&mut self`, or a type implementing `Receiver` such as `self: Box<Self>`, `self: Rc<Self>`, or `self: Arc<Self>`

error[E0658]: `R` cannot be used as the type of `self` without the `arbitrary_self_types` feature
##[error]  --> /checkout/tests/ui/self/arbitrary-self-from-method-substs.rs:61:18
   |
LL |     fn get(self: R) {}
   |                  ^
   |
   = note: see issue #44874 <https://github.com/rust-lang/rust/issues/44874> for more information
   = help: add `#![feature(arbitrary_self_types)]` to the crate attributes to enable
   = note: this compiler was built on YYYY-MM-DD; consider upgrading it if it is out of date
   = help: consider changing to `self`, `&self`, `&mut self`, or a type implementing `Receiver` such as `self: Box<Self>`, `self: Rc<Self>`, or `self: Arc<Self>`

error[E0271]: type mismatch resolving `<Silly as FindReceiver>::Receiver == Foo`
##[error]  --> /checkout/tests/ui/self/arbitrary-self-from-method-substs.rs:92:9
   |
LL |     foo.get6(Silly);
   |         ^^^^ type mismatch resolving `<Silly as FindReceiver>::Receiver == Foo`
   |
note: expected this to be `Foo`
  --> /checkout/tests/ui/self/arbitrary-self-from-method-substs.rs:71:21
   |
LL |     type Receiver = std::rc::Rc<Foo>;
   |                     ^^^^^^^^^^^^^^^^
   = note: expected struct `Foo`
              found struct `Rc<Foo>`

error[E0271]: type mismatch resolving `<Silly as FindReceiver>::Receiver == &Foo`
##[error]  --> /checkout/tests/ui/self/arbitrary-self-from-method-substs.rs:96:9
   |
LL |     foo.get6(Silly);
   |         ^^^^ type mismatch resolving `<Silly as FindReceiver>::Receiver == &Foo`
   |
note: expected this to be `&Foo`
  --> /checkout/tests/ui/self/arbitrary-self-from-method-substs.rs:71:21
   |
LL |     type Receiver = std::rc::Rc<Foo>;
   |                     ^^^^^^^^^^^^^^^^
   = note: expected reference `&Foo`
                 found struct `Rc<Foo>`

error[E0599]: no method named `get` found for struct `Rc<Bar<_>>` in the current scope
##[error]  --> /checkout/tests/ui/self/arbitrary-self-from-method-substs.rs:100:7
   |
LL |     t.get();
   |       ^^^ method not found in `Rc<Bar<_>>`
   |
   = help: items from traits can only be used if the trait is implemented and in scope
   = note: the following trait defines an item `get`, perhaps you need to implement it:
           candidate #1: `SliceIndex`

error[E0599]: no method named `get` found for reference `&Rc<Bar<_>>` in the current scope
##[error]  --> /checkout/tests/ui/self/arbitrary-self-from-method-substs.rs:108:7
   |
LL |     t.get();
   |       ^^^ method not found in `&Rc<Bar<_>>`
   |
   = help: items from traits can only be used if the trait is implemented and in scope
   = note: the following trait defines an item `get`, perhaps you need to implement it:
           candidate #1: `SliceIndex`

---

113    = note: expected reference `&Foo`
114                  found struct `Rc<Foo>`
115 
- error[E0599]: the method `get` exists for struct `Rc<Bar<_>>`, but its trait bounds were not satisfied
+ error[E0599]: no method named `get` found for struct `Rc<Bar<_>>` in the current scope
117   --> $DIR/arbitrary-self-from-method-substs.rs:100:7
118    |
- LL | struct Bar<R>(std::marker::PhantomData<R>);
-    | ------------- doesn't satisfy `Bar<_>: Deref`
- ...
122 LL |     t.get();
-    |       ^^^ method cannot be called on `Rc<Bar<_>>` due to unsatisfied trait bounds
+    |       ^^^ method not found in `Rc<Bar<_>>`
124    |
- note: the following trait bounds were not satisfied:
-       `<&Bar<_> as Deref>::Target = Bar<&Bar<_>>`
-       `<&Rc<Bar<_>> as Deref>::Target = Bar<&Rc<Bar<_>>>`
-       `<&mut Bar<_> as Deref>::Target = Bar<&mut Bar<_>>`
-       `<&mut Rc<Bar<_>> as Deref>::Target = Bar<&mut Rc<Bar<_>>>`
-       `<Rc<Bar<_>> as Deref>::Target = Bar<Rc<Bar<_>>>`
-       `Bar<_>: Deref`
-   --> $DIR/arbitrary-self-from-method-substs.rs:60:9
-    |
- LL | impl<R: std::ops::Deref<Target = Self>> Bar<R> {
-    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^  ------
-    |         |               |
-    |         |               unsatisfied trait bound introduced here
-    |         unsatisfied trait bound introduced here
- note: the trait `Deref` must be implemented
-   --> $SRC_DIR/core/src/ops/deref.rs:LL:COL
141    = help: items from traits can only be used if the trait is implemented and in scope
142    = note: the following trait defines an item `get`, perhaps you need to implement it:
143            candidate #1: `SliceIndex`

144 
- error[E0599]: the method `get` exists for reference `&Rc<Bar<_>>`, but its trait bounds were not satisfied
+ error[E0599]: no method named `get` found for reference `&Rc<Bar<_>>` in the current scope
146   --> $DIR/arbitrary-self-from-method-substs.rs:108:7
147    |
- LL | struct Bar<R>(std::marker::PhantomData<R>);
-    | ------------- doesn't satisfy `Bar<_>: Deref`
- ...
151 LL |     t.get();
-    |       ^^^ method cannot be called on `&Rc<Bar<_>>` due to unsatisfied trait bounds
+    |       ^^^ method not found in `&Rc<Bar<_>>`
153    |
- note: the following trait bounds were not satisfied:
-       `<&&Rc<Bar<_>> as Deref>::Target = Bar<&&Rc<Bar<_>>>`
-       `<&Bar<_> as Deref>::Target = Bar<&Bar<_>>`
-       `<&Rc<Bar<_>> as Deref>::Target = Bar<&Rc<Bar<_>>>`
-       `<&mut &Rc<Bar<_>> as Deref>::Target = Bar<&mut &Rc<Bar<_>>>`
-       `<&mut Bar<_> as Deref>::Target = Bar<&mut Bar<_>>`
-       `<&mut Rc<Bar<_>> as Deref>::Target = Bar<&mut Rc<Bar<_>>>`
-       `<Rc<Bar<_>> as Deref>::Target = Bar<Rc<Bar<_>>>`
-       `Bar<_>: Deref`
-   --> $DIR/arbitrary-self-from-method-substs.rs:60:9
-    |
- LL | impl<R: std::ops::Deref<Target = Self>> Bar<R> {
-    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^  ------
-    |         |               |
-    |         |               unsatisfied trait bound introduced here
-    |         unsatisfied trait bound introduced here
- note: the trait `Deref` must be implemented
---
To only update this specific test, also pass `--test-args self/arbitrary-self-from-method-substs.rs`

error in revision `feature`: 1 errors occurred comparing output.
status: exit status: 1
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/aarch64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/self/arbitrary-self-from-method-substs.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/aarch64-unknown-linux-gnu/stage2" "--target=aarch64-unknown-linux-gnu" "--cfg" "feature" "--check-cfg" "cfg(test,FALSE,default,feature)" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/aarch64-unknown-linux-gnu/test/ui/self/arbitrary-self-from-method-substs.feature" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/aarch64-unknown-linux-gnu/native/rust-test-helpers"
stdout: none
--- stderr -------------------------------
error[E0801]: invalid generic `self` parameter type: `R`
##[error]  --> /checkout/tests/ui/self/arbitrary-self-from-method-substs.rs:9:43
   |
LL |     fn get<R: Deref<Target = Self>>(self: R) -> u32 {
   |                                           ^
   |
   = note: type of `self` must not be a method generic parameter type
   = help: use a concrete type such as `self`, `&self`, `&mut self`, `self: Box<Self>`, `self: Rc<Self>`, `self: Arc<Self>`, or `self: Pin<P>` (where P is one of the previous types except `Self`)

error[E0801]: invalid generic `self` parameter type: `&R`
##[error]  --> /checkout/tests/ui/self/arbitrary-self-from-method-substs.rs:13:44
   |
LL |     fn get1<R: Deref<Target = Self>>(self: &R) -> u32 {
   |                                            ^^
   |
   = note: type of `self` must not be a method generic parameter type
   = help: use a concrete type such as `self`, `&self`, `&mut self`, `self: Box<Self>`, `self: Rc<Self>`, `self: Arc<Self>`, or `self: Pin<P>` (where P is one of the previous types except `Self`)

error[E0801]: invalid generic `self` parameter type: `&mut R`
##[error]  --> /checkout/tests/ui/self/arbitrary-self-from-method-substs.rs:17:44
   |
LL |     fn get2<R: Deref<Target = Self>>(self: &mut R) -> u32 {
   |                                            ^^^^^^
   |
   = note: type of `self` must not be a method generic parameter type
   = help: use a concrete type such as `self`, `&self`, `&mut self`, `self: Box<Self>`, `self: Rc<Self>`, `self: Arc<Self>`, or `self: Pin<P>` (where P is one of the previous types except `Self`)

error[E0801]: invalid generic `self` parameter type: `Rc<R>`
##[error]  --> /checkout/tests/ui/self/arbitrary-self-from-method-substs.rs:21:44
   |
LL |     fn get3<R: Deref<Target = Self>>(self: std::rc::Rc<R>) -> u32 {
   |                                            ^^^^^^^^^^^^^^
   |
   = note: type of `self` must not be a method generic parameter type
   = help: use a concrete type such as `self`, `&self`, `&mut self`, `self: Box<Self>`, `self: Rc<Self>`, `self: Arc<Self>`, or `self: Pin<P>` (where P is one of the previous types except `Self`)

error[E0801]: invalid generic `self` parameter type: `&Rc<R>`
##[error]  --> /checkout/tests/ui/self/arbitrary-self-from-method-substs.rs:25:44
   |
LL |     fn get4<R: Deref<Target = Self>>(self: &std::rc::Rc<R>) -> u32 {
   |                                            ^^^^^^^^^^^^^^^
   |
   = note: type of `self` must not be a method generic parameter type
   = help: use a concrete type such as `self`, `&self`, `&mut self`, `self: Box<Self>`, `self: Rc<Self>`, `self: Arc<Self>`, or `self: Pin<P>` (where P is one of the previous types except `Self`)

error[E0801]: invalid generic `self` parameter type: `Rc<&R>`
##[error]  --> /checkout/tests/ui/self/arbitrary-self-from-method-substs.rs:29:44
   |
LL |     fn get5<R: Deref<Target = Self>>(self: std::rc::Rc<&R>) -> u32 {
   |                                            ^^^^^^^^^^^^^^^
   |
   = note: type of `self` must not be a method generic parameter type
   = help: use a concrete type such as `self`, `&self`, `&mut self`, `self: Box<Self>`, `self: Rc<Self>`, `self: Arc<Self>`, or `self: Pin<P>` (where P is one of the previous types except `Self`)

error[E0308]: mismatched types
##[error]  --> /checkout/tests/ui/self/arbitrary-self-from-method-substs.rs:76:5
   |
LL |     foo.get::<&Foo>();
   |     ^^^ expected `&Foo`, found `Foo`

error[E0308]: mismatched types
##[error]  --> /checkout/tests/ui/self/arbitrary-self-from-method-substs.rs:78:5
   |
LL |     foo.get::<std::rc::Rc<Foo>>();
   |     ^^^ expected `Rc<Foo>`, found `Foo`
   |
   = note: expected struct `Rc<Foo>`
              found struct `Foo`

error[E0308]: mismatched types
##[error]  --> /checkout/tests/ui/self/arbitrary-self-from-method-substs.rs:84:5
   |
LL |     smart_ptr.get::<SmartPtr2<Foo>>();
   |     ^^^^^^^^^ expected `SmartPtr2<'_, Foo>`, found `SmartPtr<'_, Foo>`
   |
   = note: expected struct `SmartPtr2<'_, Foo>`
              found struct `SmartPtr<'_, Foo>`

error[E0308]: mismatched types
##[error]  --> /checkout/tests/ui/self/arbitrary-self-from-method-substs.rs:86:5
   |
LL |     smart_ptr.get::<&Foo>();
   |     ^^^^^^^^^ expected `&Foo`, found `SmartPtr<'_, Foo>`
   |
   = note: expected reference `&Foo`
                 found struct `SmartPtr<'_, Foo>`

error[E0271]: type mismatch resolving `<Silly as FindReceiver>::Receiver == Foo`
##[error]  --> /checkout/tests/ui/self/arbitrary-self-from-method-substs.rs:92:9
   |
LL |     foo.get6(Silly);
   |         ^^^^ type mismatch resolving `<Silly as FindReceiver>::Receiver == Foo`
   |
note: expected this to be `Foo`
  --> /checkout/tests/ui/self/arbitrary-self-from-method-substs.rs:71:21
   |
LL |     type Receiver = std::rc::Rc<Foo>;
   |                     ^^^^^^^^^^^^^^^^
   = note: expected struct `Foo`
              found struct `Rc<Foo>`

error[E0271]: type mismatch resolving `<Silly as FindReceiver>::Receiver == &Foo`
##[error]  --> /checkout/tests/ui/self/arbitrary-self-from-method-substs.rs:96:9
   |
LL |     foo.get6(Silly);
   |         ^^^^ type mismatch resolving `<Silly as FindReceiver>::Receiver == &Foo`
   |
note: expected this to be `&Foo`
  --> /checkout/tests/ui/self/arbitrary-self-from-method-substs.rs:71:21
   |
LL |     type Receiver = std::rc::Rc<Foo>;
   |                     ^^^^^^^^^^^^^^^^
   = note: expected reference `&Foo`
                 found struct `Rc<Foo>`

error[E0599]: no method named `get` found for struct `Rc<Bar<_>>` in the current scope
##[error]  --> /checkout/tests/ui/self/arbitrary-self-from-method-substs.rs:100:7
   |
LL |     t.get();
   |       ^^^ method not found in `Rc<Bar<_>>`
   |
   = help: items from traits can only be used if the trait is implemented and in scope
   = note: the following trait defines an item `get`, perhaps you need to implement it:
           candidate #1: `SliceIndex`

error[E0599]: no method named `get` found for reference `&Rc<Bar<_>>` in the current scope
##[error]  --> /checkout/tests/ui/self/arbitrary-self-from-method-substs.rs:108:7
   |
LL |     t.get();
   |       ^^^ method not found in `&Rc<Bar<_>>`
   |
   = help: items from traits can only be used if the trait is implemented and in scope
   = note: the following trait defines an item `get`, perhaps you need to implement it:
           candidate #1: `SliceIndex`

---
---- [ui] tests/ui/suggestions/derive-trait-for-method-call.rs stdout ----
Saved the actual stderr to `/checkout/obj/build/aarch64-unknown-linux-gnu/test/ui/suggestions/derive-trait-for-method-call/derive-trait-for-method-call.stderr`
diff of stderr:

- error[E0599]: the method `test` exists for struct `Foo<Enum, CloneEnum>`, but its trait bounds were not satisfied
+ error[E0599]: no method named `test` found for struct `Foo<Enum, CloneEnum>` in the current scope
2   --> $DIR/derive-trait-for-method-call.rs:28:15
3    |
- LL | enum Enum {
-    | --------- doesn't satisfy `Enum: Clone` or `Enum: Default`
- ...
- LL | enum CloneEnum {
-    | -------------- doesn't satisfy `CloneEnum: Default`
- ...
10 LL | struct Foo<X, Y> (X, Y);
11    | ---------------- method `test` not found for this struct
12 ...

13 LL |     let y = x.test();
-    |               ^^^^ method cannot be called on `Foo<Enum, CloneEnum>` due to unsatisfied trait bounds
+    |               ^^^^ method not found in `Foo<Enum, CloneEnum>`
15    |
- note: the following trait bounds were not satisfied:
-       `CloneEnum: Default`
-       `Enum: Clone`
-       `Enum: Default`
-   --> $DIR/derive-trait-for-method-call.rs:20:9
-    |
- LL | impl<X: Clone + Default + , Y: Clone + Default> Foo<X, Y> {
-    |         ^^^^^   ^^^^^^^                ^^^^^^^  ---------
-    |         |       |                      |
-    |         |       |                      unsatisfied trait bound introduced here
-    |         |       unsatisfied trait bound introduced here
-    |         unsatisfied trait bound introduced here
- note: the trait `Default` must be implemented
-   --> $SRC_DIR/core/src/default.rs:LL:COL
- help: consider annotating `Enum` with `#[derive(Clone)]`
-    |
- LL + #[derive(Clone)]
- LL | enum Enum {
-    |
+    = note: the method was found for
+            - `Foo<X, Y>`
35 
- error[E0599]: the method `test` exists for struct `Foo<Struct, CloneStruct>`, but its trait bounds were not satisfied
+ error[E0599]: no method named `test` found for struct `Foo<Struct, CloneStruct>` in the current scope
37   --> $DIR/derive-trait-for-method-call.rs:34:15
38    |
- LL | struct Struct {
-    | ------------- doesn't satisfy `Struct: Clone` or `Struct: Default`
- ...
- LL | struct CloneStruct {
-    | ------------------ doesn't satisfy `CloneStruct: Default`
- ...
45 LL | struct Foo<X, Y> (X, Y);
46    | ---------------- method `test` not found for this struct
47 ...

48 LL |     let y = x.test();
-    |               ^^^^ method cannot be called on `Foo<Struct, CloneStruct>` due to unsatisfied trait bounds
+    |               ^^^^ method not found in `Foo<Struct, CloneStruct>`
50    |
- note: the following trait bounds were not satisfied:
-       `CloneStruct: Default`
-       `Struct: Clone`
-       `Struct: Default`
-   --> $DIR/derive-trait-for-method-call.rs:20:9
-    |
- LL | impl<X: Clone + Default + , Y: Clone + Default> Foo<X, Y> {
-    |         ^^^^^   ^^^^^^^                ^^^^^^^  ---------
-    |         |       |                      |
-    |         |       |                      unsatisfied trait bound introduced here
-    |         |       unsatisfied trait bound introduced here
-    |         unsatisfied trait bound introduced here
- help: consider annotating `CloneStruct` with `#[derive(Default)]`
---
-    |
- LL + #[derive(Clone, Default)]
- LL | struct Struct {
-    |
+    = note: the method was found for
+            - `Foo<X, Y>`
73 
- error[E0599]: the method `test` exists for struct `Foo<Vec<Enum>, Instant>`, but its trait bounds were not satisfied
+ error[E0599]: no method named `test` found for struct `Foo<Vec<Enum>, Instant>` in the current scope
75   --> $DIR/derive-trait-for-method-call.rs:40:15
76    |
- LL | enum Enum {
-    | --------- doesn't satisfy `Enum: Clone`
- ...
80 LL | struct Foo<X, Y> (X, Y);
81    | ---------------- method `test` not found for this struct
82 ...

83 LL |     let y = x.test();
-    |               ^^^^ method cannot be called on `Foo<Vec<Enum>, Instant>` due to unsatisfied trait bounds
+    |               ^^^^ method not found in `Foo<Vec<Enum>, Instant>`
85    |
- note: trait bound `Instant: Default` was not satisfied
-   --> $DIR/derive-trait-for-method-call.rs:20:40
-    |
- LL | impl<X: Clone + Default + , Y: Clone + Default> Foo<X, Y> {
-    |                                        ^^^^^^^  ---------
-    |                                        |
-    |                                        unsatisfied trait bound introduced here
-    = note: the following trait bounds were not satisfied:
-            `Enum: Clone`
-            which is required by `Vec<Enum>: Clone`
- help: consider annotating `Enum` with `#[derive(Clone)]`
-    |
- LL + #[derive(Clone)]
- LL | enum Enum {
-    |
+    = note: the method was found for
+            - `Foo<X, Y>`
101 
102 error: aborting due to 3 previous errors
103 


The actual stderr differed from the expected stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args suggestions/derive-trait-for-method-call.rs`

error: 1 errors occurred comparing output.
status: exit status: 1
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/aarch64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/suggestions/derive-trait-for-method-call.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/aarch64-unknown-linux-gnu/stage2" "--target=aarch64-unknown-linux-gnu" "--check-cfg" "cfg(test,FALSE)" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/aarch64-unknown-linux-gnu/test/ui/suggestions/derive-trait-for-method-call" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/aarch64-unknown-linux-gnu/native/rust-test-helpers"
stdout: none
--- stderr -------------------------------
error[E0599]: no method named `test` found for struct `Foo<Enum, CloneEnum>` in the current scope
##[error]  --> /checkout/tests/ui/suggestions/derive-trait-for-method-call.rs:28:15
   |
LL | struct Foo<X, Y> (X, Y);
   | ---------------- method `test` not found for this struct
...
LL |     let y = x.test();
   |               ^^^^ method not found in `Foo<Enum, CloneEnum>`
   |
   = note: the method was found for
           - `Foo<X, Y>`

error[E0599]: no method named `test` found for struct `Foo<Struct, CloneStruct>` in the current scope
##[error]  --> /checkout/tests/ui/suggestions/derive-trait-for-method-call.rs:34:15
   |
LL | struct Foo<X, Y> (X, Y);
   | ---------------- method `test` not found for this struct
...
LL |     let y = x.test();
   |               ^^^^ method not found in `Foo<Struct, CloneStruct>`
   |
   = note: the method was found for
           - `Foo<X, Y>`

error[E0599]: no method named `test` found for struct `Foo<Vec<Enum>, Instant>` in the current scope
##[error]  --> /checkout/tests/ui/suggestions/derive-trait-for-method-call.rs:40:15
   |
LL | struct Foo<X, Y> (X, Y);
   | ---------------- method `test` not found for this struct
...
LL |     let y = x.test();
   |               ^^^^ method not found in `Foo<Vec<Enum>, Instant>`
   |
   = note: the method was found for
           - `Foo<X, Y>`

error: aborting due to 3 previous errors

For more information about this error, try `rustc --explain E0599`.
------------------------------------------


---- [ui] tests/ui/traits/alias/issue-108132-unmet-trait-alias-bound-on-generic-impl.rs stdout ----
Saved the actual stderr to `/checkout/obj/build/aarch64-unknown-linux-gnu/test/ui/traits/alias/issue-108132-unmet-trait-alias-bound-on-generic-impl/issue-108132-unmet-trait-alias-bound-on-generic-impl.stderr`
diff of stderr:

- error[E0599]: the function or associated item `f` exists for struct `Foo<()>`, but its trait bounds were not satisfied
+ error[E0599]: no function or associated item named `f` found for struct `Foo<()>` in the current scope
2   --> $DIR/issue-108132-unmet-trait-alias-bound-on-generic-impl.rs:14:16
3    |
4 LL | struct Foo<I>(I);

5    | ------------- function or associated item `f` not found for this struct
6 ...
7 LL |     Foo::<()>::f()
-    |                ^ function or associated item cannot be called on `Foo<()>` due to unsatisfied trait bounds
+    |                ^ function or associated item not found in `Foo<()>`
9    |
- note: trait bound `(): Iterator` was not satisfied
-   --> $DIR/issue-108132-unmet-trait-alias-bound-on-generic-impl.rs:5:23
-    |
- LL | trait IteratorAlias = Iterator;
-    |       -------------   ^^^^^^^^ unsatisfied trait bound introduced here
+    = note: the function or associated item was found for
+            - `Foo<I>`
15 
16 error: aborting due to 1 previous error
17 


The actual stderr differed from the expected stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args traits/alias/issue-108132-unmet-trait-alias-bound-on-generic-impl.rs`

error: 1 errors occurred comparing output.
status: exit status: 1
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/aarch64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/traits/alias/issue-108132-unmet-trait-alias-bound-on-generic-impl.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/aarch64-unknown-linux-gnu/stage2" "--target=aarch64-unknown-linux-gnu" "--check-cfg" "cfg(test,FALSE)" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/aarch64-unknown-linux-gnu/test/ui/traits/alias/issue-108132-unmet-trait-alias-bound-on-generic-impl" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/aarch64-unknown-linux-gnu/native/rust-test-helpers"
stdout: none
--- stderr -------------------------------
error[E0599]: no function or associated item named `f` found for struct `Foo<()>` in the current scope
##[error]  --> /checkout/tests/ui/traits/alias/issue-108132-unmet-trait-alias-bound-on-generic-impl.rs:14:16
   |
LL | struct Foo<I>(I);
   | ------------- function or associated item `f` not found for this struct
...
LL |     Foo::<()>::f() //~ ERROR trait bounds were not satisfied
   |                ^ function or associated item not found in `Foo<()>`
   |
   = note: the function or associated item was found for
           - `Foo<I>`

error: aborting due to 1 previous error

For more information about this error, try `rustc --explain E0599`.
------------------------------------------
---
- error[E0599]: the method `check` exists for struct `Client<()>`, but its trait bounds were not satisfied
+ error[E0599]: no method named `check` found for struct `Client<()>` in the current scope
2   --> $DIR/track-obligations.rs:83:16
3    |
- LL | struct ALayer<C>(C);
-    | ---------------- doesn't satisfy `ALayer<()>: ParticularServiceLayer<()>`
- ...
- LL | struct AService;
-    | --------------- doesn't satisfy `<AService as Service<Req>>::Response = Res`
- ...
10 LL | struct Client<C>(C);
11    | ---------------- method `check` not found for this struct
12 ...

13 LL |     Client(()).check();
-    |                ^^^^^ method cannot be called on `Client<()>` due to unsatisfied trait bounds
+    |                ^^^^^ method not found in `Client<()>`
15    |
- note: trait bound `<AService as Service<Req>>::Response = Res` was not satisfied
-   --> $DIR/track-obligations.rs:24:21
-    |
- LL | impl<T> ParticularService for T
-    |         -----------------     -
- LL | where
- LL |     T: Service<Req, Response = Res>,
-    |                     ^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
+    = note: the method was found for
+            - `Client<C>`
24 
25 error[E0271]: type mismatch resolving `<AService as Service<Req>>::Response == Res`
26   --> $DIR/track-obligations.rs:87:11


The actual stderr differed from the expected stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args traits/track-obligations.rs`

error: 1 errors occurred comparing output.
status: exit status: 1
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/aarch64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/traits/track-obligations.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/aarch64-unknown-linux-gnu/stage2" "--target=aarch64-unknown-linux-gnu" "--check-cfg" "cfg(test,FALSE)" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/aarch64-unknown-linux-gnu/test/ui/traits/track-obligations" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/aarch64-unknown-linux-gnu/native/rust-test-helpers"
stdout: none
--- stderr -------------------------------
error[E0599]: no method named `check` found for struct `Client<()>` in the current scope
##[error]  --> /checkout/tests/ui/traits/track-obligations.rs:83:16
   |
LL | struct Client<C>(C);
   | ---------------- method `check` not found for this struct
...
LL |     Client(()).check(); //~ ERROR E0599
   |                ^^^^^ method not found in `Client<()>`
   |
   = note: the method was found for
           - `Client<C>`

error[E0271]: type mismatch resolving `<AService as Service<Req>>::Response == Res`
##[error]  --> /checkout/tests/ui/traits/track-obligations.rs:87:11
   |
LL |     check(()); //~ ERROR E0271
   |     ----- ^^ type mismatch resolving `<AService as Service<Req>>::Response == Res`
   |     |
   |     required by a bound introduced by this call
   |
note: expected this to be `Res`
  --> /checkout/tests/ui/traits/track-obligations.rs:60:21
---
  --> /checkout/tests/ui/traits/track-obligations.rs:22:9
   |
LL | impl<T> ParticularService for T
   |         ^^^^^^^^^^^^^^^^^     ^
LL | where
LL |     T: Service<Req, Response = Res>,
   |                     -------------- unsatisfied trait bound introduced here
note: required for `ALayer<_>` to implement `ParticularServiceLayer<_>`
  --> /checkout/tests/ui/traits/track-obligations.rs:40:12
   |
LL | impl<T, C> ParticularServiceLayer<C> for T
   |            ^^^^^^^^^^^^^^^^^^^^^^^^^     ^
...
LL |     T::Service: ParticularService,
   |                 ----------------- unsatisfied trait bound introduced here
note: required by a bound in `check`
  --> /checkout/tests/ui/traits/track-obligations.rs:76:36
   |
LL | fn check<C>(_: C) where ALayer<C>: ParticularServiceLayer<C> {}
   |                                    ^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `check`

error: aborting due to 2 previous errors

Some errors have detailed explanations: E0271, E0599.
---
7 LL |         self.bar()
-    |              ^^^ method cannot be called on `Bar<u32>` due to unsatisfied trait bounds
+    |              ^^^ method not found in `Bar<u32>`
+    |
+    = note: the method was found for
+            - `Bar<Foo>`
9 
10 error: aborting due to 1 previous error
11 


The actual stderr differed from the expected stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args type-alias-impl-trait/method_resolution.rs`

error in revision `next`: 1 errors occurred comparing output.
status: exit status: 1
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/aarch64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/type-alias-impl-trait/method_resolution.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/aarch64-unknown-linux-gnu/stage2" "--target=aarch64-unknown-linux-gnu" "--cfg" "next" "--check-cfg" "cfg(test,FALSE,current,next)" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/aarch64-unknown-linux-gnu/test/ui/type-alias-impl-trait/method_resolution.next" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/aarch64-unknown-linux-gnu/native/rust-test-helpers" "-Znext-solver"
stdout: none
--- stderr -------------------------------
error[E0599]: no method named `bar` found for struct `Bar<u32>` in the current scope
##[error]  --> /checkout/tests/ui/type-alias-impl-trait/method_resolution.rs:22:14
   |
LL | struct Bar<T>(T);
   | ------------- method `bar` not found for this struct
...
LL |         self.bar()
   |              ^^^ method not found in `Bar<u32>`
   |
   = note: the method was found for
           - `Bar<Foo>`

error: aborting due to 1 previous error

For more information about this error, try `rustc --explain E0599`.
------------------------------------------

@rust-bors
Copy link

rust-bors bot commented Jun 8, 2025

☀️ Try build successful (CI)
Build commit: 839e714 (839e7149d8adf041ccdb563794b1d057536352fd)

@rust-timer

This comment has been minimized.

@rust-timer
Copy link
Collaborator

Finished benchmarking commit (839e714): comparison URL.

Overall result: ✅ improvements - no action needed

Benchmarking this pull request likely means that it is perf-sensitive, so we're automatically marking it as not fit for rolling up. While you can manually mark this PR as fit for rollup, we strongly recommend not doing so since this PR may lead to changes in compiler perf.

@bors rollup=never
@rustbot label: -S-waiting-on-perf -perf-regression

Instruction count

This is the most reliable metric that we have; it was used to determine the overall result at the top of this comment. However, even this metric can sometimes exhibit noise.

mean range count
Regressions ❌
(primary)
- - 0
Regressions ❌
(secondary)
- - 0
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
-1.2% [-3.0%, -0.2%] 10
All ❌✅ (primary) - - 0

Max RSS (memory usage)

Results (primary -4.0%, secondary -2.9%)

This is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.

mean range count
Regressions ❌
(primary)
- - 0
Regressions ❌
(secondary)
- - 0
Improvements ✅
(primary)
-4.0% [-4.0%, -4.0%] 1
Improvements ✅
(secondary)
-2.9% [-2.9%, -2.9%] 1
All ❌✅ (primary) -4.0% [-4.0%, -4.0%] 1

Cycles

Results (primary -1.5%, secondary -0.8%)

This is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.

mean range count
Regressions ❌
(primary)
- - 0
Regressions ❌
(secondary)
2.6% [2.6%, 2.6%] 1
Improvements ✅
(primary)
-1.5% [-1.5%, -1.5%] 1
Improvements ✅
(secondary)
-2.5% [-2.6%, -2.3%] 2
All ❌✅ (primary) -1.5% [-1.5%, -1.5%] 1

Binary size

This benchmark run did not return any relevant results for this metric.

Bootstrap: 751.361s -> 752.673s (0.17%)
Artifact size: 372.44 MiB -> 372.49 MiB (0.01%)

@rustbot rustbot removed the S-waiting-on-perf Status: Waiting on a perf run to be completed. label Jun 8, 2025
@compiler-errors
Copy link
Member Author

Modest improvement, so I'll table this for now.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
T-compiler Relevant to the compiler team, which will review and decide on the PR/issue.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants