385eea1d46
Do not provide a structured suggestion when the arguments don't match. ``` error[E0599]: no method named `test_mut` found for struct `Vec<{integer}>` in the current scope --> $DIR/auto-ref-slice-plus-ref.rs:7:7 | LL | a.test_mut(); | ^^^^^^^^ | = help: items from traits can only be used if the trait is implemented and in scope note: `MyIter` defines an item `test_mut`, perhaps you need to implement it --> $DIR/auto-ref-slice-plus-ref.rs:14:1 | LL | trait MyIter { | ^^^^^^^^^^^^ help: there is a method `get_mut` with a similar name, but with different arguments --> $SRC_DIR/core/src/slice/mod.rs:LL:COL ``` Consider methods beyond inherent ones when suggesting typos. ``` 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 with a similar name: `to_owned` ``` Fix #101013.
34 lines
674 B
Rust
34 lines
674 B
Rust
struct Foo;
|
|
|
|
impl Foo {
|
|
fn bar(self) {}
|
|
fn baz(&self, x: f64) {}
|
|
}
|
|
|
|
trait FooT {
|
|
fn bag(&self);
|
|
//~^ HELP there is a method
|
|
}
|
|
|
|
impl FooT for Foo {
|
|
fn bag(&self) {}
|
|
}
|
|
|
|
fn main() {
|
|
let f = Foo;
|
|
f.bat(1.0); //~ ERROR no method named
|
|
|
|
let s = "foo".to_string();
|
|
let _ = s.is_emtpy(); //~ ERROR no method named
|
|
//~^ HELP there is a method
|
|
|
|
// Generates a warning for `count_zeros()`. `count_ones()` is also a close
|
|
// match, but the former is closer.
|
|
let _ = 63u32.count_eos(); //~ ERROR no method named
|
|
//~^ HELP there is a method
|
|
|
|
let _ = 63u32.count_o(); //~ ERROR no method named
|
|
//~^ HELP there is a method
|
|
|
|
}
|