error[E0283]: type annotations needed
  --> $DIR/suggest-fully-qualified-path-with-adjustment.rs:45:11
   |
LL |     thing.method();
   |           ^^^^^^
   |
note: multiple `impl`s satisfying `Thing: Method<_>` found
  --> $DIR/suggest-fully-qualified-path-with-adjustment.rs:10:1
   |
LL | impl Method<i32> for Thing {
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^
...
LL | impl Method<u32> for Thing {
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^
help: try using a fully qualified path to specify the expected types
   |
LL |     <Thing as Method<T>>::method(&thing);
   |     ++++++++++++++++++++++++++++++     ~

error[E0283]: type annotations needed
  --> $DIR/suggest-fully-qualified-path-with-adjustment.rs:46:11
   |
LL |     thing.mut_method();
   |           ^^^^^^^^^^
   |
note: multiple `impl`s satisfying `Thing: Method<_>` found
  --> $DIR/suggest-fully-qualified-path-with-adjustment.rs:10:1
   |
LL | impl Method<i32> for Thing {
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^
...
LL | impl Method<u32> for Thing {
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^
help: try using a fully qualified path to specify the expected types
   |
LL |     <Thing as Method<T>>::mut_method(&mut thing);
   |     +++++++++++++++++++++++++++++++++++++      ~

error[E0283]: type annotations needed
  --> $DIR/suggest-fully-qualified-path-with-adjustment.rs:47:11
   |
LL |     thing.by_self();
   |           ^^^^^^^
   |
note: multiple `impl`s satisfying `&Thing: MethodRef<_>` found
  --> $DIR/suggest-fully-qualified-path-with-adjustment.rs:22:1
   |
LL | impl MethodRef<i32> for &Thing {
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
...
LL | impl MethodRef<u32> for &Thing {
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
help: try using a fully qualified path to specify the expected types
   |
LL |     <&Thing as MethodRef<T>>::by_self(&thing);
   |     +++++++++++++++++++++++++++++++++++     ~

error[E0283]: type annotations needed
  --> $DIR/suggest-fully-qualified-path-with-adjustment.rs:50:14
   |
LL |     deref_to.method();
   |              ^^^^^^
   |
note: multiple `impl`s satisfying `Thing: Method<_>` found
  --> $DIR/suggest-fully-qualified-path-with-adjustment.rs:10:1
   |
LL | impl Method<i32> for Thing {
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^
...
LL | impl Method<u32> for Thing {
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^
help: try using a fully qualified path to specify the expected types
   |
LL |     <Thing as Method<T>>::method(&deref_to);
   |     ++++++++++++++++++++++++++++++        ~

error[E0283]: type annotations needed
  --> $DIR/suggest-fully-qualified-path-with-adjustment.rs:51:14
   |
LL |     deref_to.mut_method();
   |              ^^^^^^^^^^
   |
note: multiple `impl`s satisfying `Thing: Method<_>` found
  --> $DIR/suggest-fully-qualified-path-with-adjustment.rs:10:1
   |
LL | impl Method<i32> for Thing {
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^
...
LL | impl Method<u32> for Thing {
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^
help: try using a fully qualified path to specify the expected types
   |
LL |     <Thing as Method<T>>::mut_method(&mut deref_to);
   |     +++++++++++++++++++++++++++++++++++++         ~

error[E0283]: type annotations needed
  --> $DIR/suggest-fully-qualified-path-with-adjustment.rs:52:14
   |
LL |     deref_to.by_self();
   |              ^^^^^^^
   |
note: multiple `impl`s satisfying `&Thing: MethodRef<_>` found
  --> $DIR/suggest-fully-qualified-path-with-adjustment.rs:22:1
   |
LL | impl MethodRef<i32> for &Thing {
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
...
LL | impl MethodRef<u32> for &Thing {
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
help: try using a fully qualified path to specify the expected types
   |
LL |     <&Thing as MethodRef<T>>::by_self(&deref_to);
   |     +++++++++++++++++++++++++++++++++++        ~

error[E0283]: type annotations needed
  --> $DIR/suggest-fully-qualified-path-with-adjustment.rs:55:20
   |
LL |     deref_deref_to.method();
   |                    ^^^^^^
   |
note: multiple `impl`s satisfying `Thing: Method<_>` found
  --> $DIR/suggest-fully-qualified-path-with-adjustment.rs:10:1
   |
LL | impl Method<i32> for Thing {
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^
...
LL | impl Method<u32> for Thing {
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^
help: try using a fully qualified path to specify the expected types
   |
LL |     <Thing as Method<T>>::method(&deref_deref_to);
   |     ++++++++++++++++++++++++++++++              ~

error[E0283]: type annotations needed
  --> $DIR/suggest-fully-qualified-path-with-adjustment.rs:56:20
   |
LL |     deref_deref_to.mut_method();
   |                    ^^^^^^^^^^
   |
note: multiple `impl`s satisfying `Thing: Method<_>` found
  --> $DIR/suggest-fully-qualified-path-with-adjustment.rs:10:1
   |
LL | impl Method<i32> for Thing {
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^
...
LL | impl Method<u32> for Thing {
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^
help: try using a fully qualified path to specify the expected types
   |
LL |     <Thing as Method<T>>::mut_method(&mut deref_deref_to);
   |     +++++++++++++++++++++++++++++++++++++               ~

error[E0283]: type annotations needed
  --> $DIR/suggest-fully-qualified-path-with-adjustment.rs:57:20
   |
LL |     deref_deref_to.by_self();
   |                    ^^^^^^^
   |
note: multiple `impl`s satisfying `&Thing: MethodRef<_>` found
  --> $DIR/suggest-fully-qualified-path-with-adjustment.rs:22:1
   |
LL | impl MethodRef<i32> for &Thing {
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
...
LL | impl MethodRef<u32> for &Thing {
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
help: try using a fully qualified path to specify the expected types
   |
LL |     <&Thing as MethodRef<T>>::by_self(&deref_deref_to);
   |     +++++++++++++++++++++++++++++++++++              ~

error: aborting due to 9 previous errors

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