mirror of
https://github.com/rust-lang/rust.git
synced 2025-10-04 03:07:25 +00:00

Method errors have an extra check that force trim paths whenever the normal string is longer than 10 characters, which can be quite unhelpful when multiple items have the same name (for example an `Error`). A user reported this force trimming as being quite unhelpful when they had a method error where the precise path of the `Error` mattered. The code uses `tcx.short_string` already to get the normal path, which tries to be clever around trimming paths if necessary, so there is no reason for this extra force trimming.
33 lines
1.1 KiB
Plaintext
33 lines
1.1 KiB
Plaintext
error[E0599]: no method named `owned` found for reference `&dyn Foo` in the current scope
|
|
--> $DIR/object-pointer-types.rs:11:7
|
|
|
|
|
LL | fn owned(self: Box<Self>);
|
|
| --------- the method might not be found because of this arbitrary self type
|
|
...
|
|
LL | x.owned();
|
|
| ^^^^^
|
|
|
|
|
help: there is a method `to_owned` with a similar name
|
|
|
|
|
LL | x.to_owned();
|
|
| +++
|
|
|
|
error[E0599]: no method named `owned` found for mutable reference `&mut dyn Foo` in the current scope
|
|
--> $DIR/object-pointer-types.rs:17:7
|
|
|
|
|
LL | fn owned(self: Box<Self>);
|
|
| --------- the method might not be found because of this arbitrary self type
|
|
...
|
|
LL | x.owned();
|
|
| ^^^^^ method not found in `&mut dyn Foo`
|
|
|
|
error[E0599]: no method named `managed` found for struct `Box<(dyn Foo + 'static)>` in the current scope
|
|
--> $DIR/object-pointer-types.rs:23:7
|
|
|
|
|
LL | x.managed();
|
|
| ^^^^^^^ method not found in `Box<(dyn Foo + 'static)>`
|
|
|
|
error: aborting due to 3 previous errors
|
|
|
|
For more information about this error, try `rustc --explain E0599`.
|