Rollup merge of #62981 - estebank:issue-62843, r=Centril
Add note suggesting to borrow a String argument to find Fix #62843.
This commit is contained in:
commit
1a775b3b55
@ -137,6 +137,10 @@ pub trait Fn<Args> : FnMut<Args> {
|
|||||||
#[rustc_paren_sugar]
|
#[rustc_paren_sugar]
|
||||||
#[rustc_on_unimplemented(
|
#[rustc_on_unimplemented(
|
||||||
on(Args="()", note="wrap the `{Self}` in a closure with no arguments: `|| {{ /* code */ }}"),
|
on(Args="()", note="wrap the `{Self}` in a closure with no arguments: `|| {{ /* code */ }}"),
|
||||||
|
on(
|
||||||
|
all(Args="(char,)", _Self="std::string::String"),
|
||||||
|
note="borrowing the `{Self}` might fix the problem"
|
||||||
|
),
|
||||||
message="expected a `{FnMut}<{Args}>` closure, found `{Self}`",
|
message="expected a `{FnMut}<{Args}>` closure, found `{Self}`",
|
||||||
label="expected an `FnMut<{Args}>` closure, found `{Self}`",
|
label="expected an `FnMut<{Args}>` closure, found `{Self}`",
|
||||||
)]
|
)]
|
||||||
|
5
src/test/ui/suggestions/issue-62843.rs
Normal file
5
src/test/ui/suggestions/issue-62843.rs
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
fn main() {
|
||||||
|
let line = String::from("abc");
|
||||||
|
let pattern = String::from("bc");
|
||||||
|
println!("{:?}", line.find(pattern)); //~ ERROR E0277
|
||||||
|
}
|
13
src/test/ui/suggestions/issue-62843.stderr
Normal file
13
src/test/ui/suggestions/issue-62843.stderr
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
error[E0277]: expected a `std::ops::FnMut<(char,)>` closure, found `std::string::String`
|
||||||
|
--> $DIR/issue-62843.rs:4:27
|
||||||
|
|
|
||||||
|
LL | println!("{:?}", line.find(pattern));
|
||||||
|
| ^^^^ expected an `FnMut<(char,)>` closure, found `std::string::String`
|
||||||
|
|
|
||||||
|
= help: the trait `std::ops::FnMut<(char,)>` is not implemented for `std::string::String`
|
||||||
|
= note: borrowing the `std::string::String` might fix the problem
|
||||||
|
= note: required because of the requirements on the impl of `std::str::pattern::Pattern<'_>` for `std::string::String`
|
||||||
|
|
||||||
|
error: aborting due to previous error
|
||||||
|
|
||||||
|
For more information about this error, try `rustc --explain E0277`.
|
Loading…
Reference in New Issue
Block a user