mirror of
https://github.com/rust-lang/rust.git
synced 2024-11-02 07:22:42 +00:00
dfe32b6a43
When encountering a fn call that has a path to another fn being passed in, where an `Fn` impl is expected, and the arguments differ, suggest wrapping the argument with a closure with the appropriate arguments.
27 lines
914 B
Plaintext
27 lines
914 B
Plaintext
error[E0631]: type mismatch in function arguments
|
|
--> $DIR/enum-variant-arg-mismatch.rs:8:9
|
|
|
|
|
LL | Ident(&'a str),
|
|
| ----- found signature defined here
|
|
...
|
|
LL | map(Sexpr::Ident);
|
|
| --- ^^^^^^^^^^^^ expected due to this
|
|
| |
|
|
| required by a bound introduced by this call
|
|
|
|
|
= note: expected function signature `fn(String) -> _`
|
|
found function signature `fn(&str) -> _`
|
|
note: required by a bound in `map`
|
|
--> $DIR/enum-variant-arg-mismatch.rs:5:15
|
|
|
|
|
LL | fn map<'a, F: Fn(String) -> Sexpr<'a>>(f: F) {}
|
|
| ^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `map`
|
|
help: consider wrapping the function in a closure
|
|
|
|
|
LL | map(|arg0: String| Sexpr::Ident(/* &str */));
|
|
| ++++++++++++++ ++++++++++++
|
|
|
|
error: aborting due to 1 previous error
|
|
|
|
For more information about this error, try `rustc --explain E0631`.
|