Reverting switching test to no_std and adjust output after rebase.
This commit is contained in:
parent
e41ef36435
commit
cb336f1f67
@ -1823,7 +1823,6 @@ crate fn show_candidates(
|
|||||||
let instead = if instead { " instead" } else { "" };
|
let instead = if instead { " instead" } else { "" };
|
||||||
let mut msg = format!("consider importing {} {}{}", determiner, kind, instead);
|
let mut msg = format!("consider importing {} {}{}", determiner, kind, instead);
|
||||||
|
|
||||||
// Issue notes
|
|
||||||
for note in accessible_path_strings.iter().map(|cand| cand.3.as_ref()).flatten() {
|
for note in accessible_path_strings.iter().map(|cand| cand.3.as_ref()).flatten() {
|
||||||
err.note(note);
|
err.note(note);
|
||||||
}
|
}
|
||||||
|
@ -2,28 +2,30 @@
|
|||||||
// Edition 2021 change
|
// Edition 2021 change
|
||||||
// edition:2018
|
// edition:2018
|
||||||
|
|
||||||
// We mark this no_std to avoid emitting suggestions for both `std` and `core` traits. These were
|
fn test() {
|
||||||
// inconsistently ordered between CI and at least one local build, causing test failures.
|
let _i: i16 = 0_i32.try_into().unwrap();
|
||||||
#![no_std]
|
|
||||||
#![crate_type = "lib"]
|
|
||||||
|
|
||||||
pub fn test() {
|
|
||||||
let _i: Result<i16, _> = 0_i32.try_into();
|
|
||||||
//~^ ERROR no method named `try_into` found for type `i32` in the current scope
|
//~^ ERROR no method named `try_into` found for type `i32` in the current scope
|
||||||
//~| NOTE method not found in `i32`
|
//~| NOTE method not found in `i32`
|
||||||
//~| NOTE 'core::convert::TryInto' is included in the prelude starting in Edition 2021
|
//~| NOTE 'std::convert::TryInto' is included in the prelude starting in Edition 2021
|
||||||
|
|
||||||
let _i: Result<i16, _> = TryFrom::try_from(0_i32);
|
let _i: i16 = TryFrom::try_from(0_i32).unwrap();
|
||||||
//~^ ERROR failed to resolve: use of undeclared type
|
//~^ ERROR failed to resolve: use of undeclared type
|
||||||
//~| NOTE not found in this scope
|
//~| NOTE not found in this scope
|
||||||
|
//~| 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
|
//~| NOTE 'core::convert::TryFrom' is included in the prelude starting in Edition 2021
|
||||||
|
|
||||||
let _i: Result<i16, _> = TryInto::try_into(0_i32);
|
let _i: i16 = TryInto::try_into(0_i32).unwrap();
|
||||||
//~^ ERROR failed to resolve: use of undeclared type
|
//~^ ERROR failed to resolve: use of undeclared type
|
||||||
//~| NOTE not found in this scope
|
//~| NOTE not found in this scope
|
||||||
|
//~| 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
|
//~| NOTE 'core::convert::TryInto' is included in the prelude starting in Edition 2021
|
||||||
|
|
||||||
let _i: () = FromIterator::from_iter(core::iter::empty());
|
let _v: Vec<_> = FromIterator::from_iter(&[1]);
|
||||||
//~^ ERROR failed to resolve: use of undeclared type
|
//~^ ERROR failed to resolve: 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
|
//~| NOTE 'core::iter::FromIterator' is included in the prelude starting in Edition 2021
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fn main() {
|
||||||
|
test();
|
||||||
|
}
|
||||||
|
@ -1,53 +1,62 @@
|
|||||||
error[E0433]: failed to resolve: use of undeclared type `TryFrom`
|
error[E0433]: failed to resolve: use of undeclared type `TryFrom`
|
||||||
--> $DIR/suggest-tryinto-edition-change.rs:16:30
|
--> $DIR/suggest-tryinto-edition-change.rs:11:19
|
||||||
|
|
|
|
||||||
LL | let _i: Result<i16, _> = TryFrom::try_from(0_i32);
|
LL | let _i: i16 = TryFrom::try_from(0_i32).unwrap();
|
||||||
| ^^^^^^^ not found in this scope
|
| ^^^^^^^ not found in this scope
|
||||||
|
|
|
|
||||||
|
= 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
|
= note: 'core::convert::TryFrom' is included in the prelude starting in Edition 2021
|
||||||
help: consider importing this trait
|
help: consider importing one of these items
|
||||||
|
|
|
|
||||||
LL | use core::convert::TryFrom;
|
LL | use core::convert::TryFrom;
|
||||||
|
|
|
|
||||||
|
LL | use std::convert::TryFrom;
|
||||||
|
|
|
||||||
|
|
||||||
error[E0433]: failed to resolve: use of undeclared type `TryInto`
|
error[E0433]: failed to resolve: use of undeclared type `TryInto`
|
||||||
--> $DIR/suggest-tryinto-edition-change.rs:21:30
|
--> $DIR/suggest-tryinto-edition-change.rs:17:19
|
||||||
|
|
|
|
||||||
LL | let _i: Result<i16, _> = TryInto::try_into(0_i32);
|
LL | let _i: i16 = TryInto::try_into(0_i32).unwrap();
|
||||||
| ^^^^^^^ not found in this scope
|
| ^^^^^^^ not found in this scope
|
||||||
|
|
|
|
||||||
|
= 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
|
= note: 'core::convert::TryInto' is included in the prelude starting in Edition 2021
|
||||||
help: consider importing this trait
|
help: consider importing one of these items
|
||||||
|
|
|
|
||||||
LL | use core::convert::TryInto;
|
LL | use core::convert::TryInto;
|
||||||
|
|
|
|
||||||
|
LL | use std::convert::TryInto;
|
||||||
|
|
|
||||||
|
|
||||||
error[E0433]: failed to resolve: use of undeclared type `FromIterator`
|
error[E0433]: failed to resolve: use of undeclared type `FromIterator`
|
||||||
--> $DIR/suggest-tryinto-edition-change.rs:26:18
|
--> $DIR/suggest-tryinto-edition-change.rs:23:22
|
||||||
|
|
|
|
||||||
LL | let _i: () = FromIterator::from_iter(core::iter::empty());
|
LL | let _v: Vec<_> = FromIterator::from_iter(&[1]);
|
||||||
| ^^^^^^^^^^^^
|
| ^^^^^^^^^^^^
|
||||||
|
|
|
|
||||||
::: $SRC_DIR/core/src/iter/traits/collect.rs:LL:COL
|
::: $SRC_DIR/core/src/iter/traits/collect.rs:LL:COL
|
||||||
|
|
|
|
||||||
LL | pub trait IntoIterator {
|
LL | pub trait IntoIterator {
|
||||||
| ---------------------- similarly named trait `IntoIterator` defined here
|
| ---------------------- similarly named trait `IntoIterator` defined here
|
||||||
|
|
|
|
||||||
|
= 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
|
= note: 'core::iter::FromIterator' is included in the prelude starting in Edition 2021
|
||||||
help: a trait with a similar name exists
|
help: a trait with a similar name exists
|
||||||
|
|
|
|
||||||
LL | let _i: () = IntoIterator::from_iter(core::iter::empty());
|
LL | let _v: Vec<_> = IntoIterator::from_iter(&[1]);
|
||||||
| ~~~~~~~~~~~~
|
| ~~~~~~~~~~~~
|
||||||
help: consider importing this trait
|
help: consider importing one of these items
|
||||||
|
|
|
|
||||||
LL | use core::iter::FromIterator;
|
LL | use core::iter::FromIterator;
|
||||||
|
|
|
|
||||||
|
LL | use std::iter::FromIterator;
|
||||||
|
|
|
||||||
|
|
||||||
error[E0599]: no method named `try_into` found for type `i32` in the current scope
|
error[E0599]: no method named `try_into` found for type `i32` in the current scope
|
||||||
--> $DIR/suggest-tryinto-edition-change.rs:11:36
|
--> $DIR/suggest-tryinto-edition-change.rs:6:25
|
||||||
|
|
|
|
||||||
LL | let _i: Result<i16, _> = 0_i32.try_into();
|
LL | let _i: i16 = 0_i32.try_into().unwrap();
|
||||||
| ^^^^^^^^ method not found in `i32`
|
| ^^^^^^^^ method not found in `i32`
|
||||||
|
|
|
|
||||||
::: $SRC_DIR/core/src/convert/mod.rs:LL:COL
|
::: $SRC_DIR/core/src/convert/mod.rs:LL:COL
|
||||||
|
|
|
|
||||||
@ -55,10 +64,10 @@ LL | fn try_into(self) -> Result<T, Self::Error>;
|
|||||||
| -------- the method is available for `i32` here
|
| -------- the method is available for `i32` here
|
||||||
|
|
|
|
||||||
= help: items from traits can only be used if the trait is in scope
|
= help: items from traits can only be used if the trait is in scope
|
||||||
= note: 'core::convert::TryInto' is included in the prelude starting in Edition 2021
|
= note: 'std::convert::TryInto' is included in the prelude starting in Edition 2021
|
||||||
help: the following trait is implemented but not in scope; perhaps add a `use` for it:
|
help: the following trait is implemented but not in scope; perhaps add a `use` for it:
|
||||||
|
|
|
|
||||||
LL | use core::convert::TryInto;
|
LL | use std::convert::TryInto;
|
||||||
|
|
|
|
||||||
|
|
||||||
error: aborting due to 4 previous errors
|
error: aborting due to 4 previous errors
|
||||||
|
Loading…
x
Reference in New Issue
Block a user