rust/tests/ui/suggestions/enum-variant-arg-mismatch.stderr
Esteban Küber dfe32b6a43 On Fn arg mismatch for a fn path, suggest a closure
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.
2023-11-29 18:55:00 +00:00

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`.