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.
32 lines
1.4 KiB
Rust
32 lines
1.4 KiB
Rust
// Make sure that trying to access `TryInto`, `TryFrom`, `FromIterator` in pre-2021 mentions
|
|
// Edition 2021 change
|
|
//@ edition:2018
|
|
|
|
fn test() {
|
|
let _i: i16 = 0_i32.try_into().unwrap();
|
|
//~^ ERROR no method named `try_into` found for type `i32` in the current scope
|
|
//~| NOTE 'std::convert::TryInto' is included in the prelude starting in Edition 2021
|
|
|
|
let _i: i16 = TryFrom::try_from(0_i32).unwrap();
|
|
//~^ ERROR failed to resolve: use of undeclared type
|
|
//~| NOTE use of undeclared type
|
|
//~| NOTE 'std::convert::TryFrom' is included in the prelude starting in Edition 2021
|
|
//~| NOTE 'core::convert::TryFrom' is included in the prelude starting in Edition 2021
|
|
|
|
let _i: i16 = TryInto::try_into(0_i32).unwrap();
|
|
//~^ ERROR failed to resolve: use of undeclared type
|
|
//~| NOTE use of undeclared type
|
|
//~| NOTE 'std::convert::TryInto' is included in the prelude starting in Edition 2021
|
|
//~| NOTE 'core::convert::TryInto' is included in the prelude starting in Edition 2021
|
|
|
|
let _v: Vec<_> = FromIterator::from_iter(&[1]);
|
|
//~^ ERROR failed to resolve: use of undeclared type
|
|
//~| NOTE use of undeclared type
|
|
//~| NOTE 'std::iter::FromIterator' is included in the prelude starting in Edition 2021
|
|
//~| NOTE 'core::iter::FromIterator' is included in the prelude starting in Edition 2021
|
|
}
|
|
|
|
fn main() {
|
|
test();
|
|
}
|