rust/tests/ui/mismatched_types/closure-ref-114180.stderr

27 lines
1.0 KiB
Plaintext

error[E0631]: type mismatch in closure arguments
--> $DIR/closure-ref-114180.rs:6:15
|
LL | let compare = |(a,), (e,)| todo!();
| ------------ found signature defined here
LL | v.sort_by(compare);
| ------- ^^^^^^^ expected due to this
| |
| required by a bound introduced by this call
|
= note: expected closure signature `for<'a, 'b> fn(&'a ({integer},), &'b ({integer},)) -> _`
found closure signature `fn((_,), (_,)) -> _`
note: required by a bound in `slice::<impl [T]>::sort_by`
--> $SRC_DIR/alloc/src/slice.rs:LL:COL
help: consider wrapping the function in a closure
|
LL | v.sort_by(|arg0, arg1| compare(*arg0, *arg1));
| ++++++++++++ ++++++++++++++
help: consider adjusting the signature so it borrows its arguments
|
LL | let compare = |&(a,), &(e,)| todo!();
| + +
error: aborting due to 1 previous error
For more information about this error, try `rustc --explain E0631`.