| error[E0631]: type mismatch in closure arguments |
| --> $DIR/multiple-fn-bounds.rs:10:5 |
| | |
| LL | foo(move |x| v); |
| | ^^^^--------^^^ |
| | | | |
| | | found signature defined here |
| | expected due to this |
| | |
| = note: expected closure signature `fn(_) -> _` |
| found closure signature `fn(&_) -> _` |
| note: closure inferred to have a different signature due to this bound |
| --> $DIR/multiple-fn-bounds.rs:1:11 |
| | |
| LL | fn foo<F: Fn(&char) -> bool + Fn(char) -> bool>(f: F) { |
| | ^^^^^^^^^^^^^^^^^ |
| note: required by a bound in `foo` |
| --> $DIR/multiple-fn-bounds.rs:1:31 |
| | |
| LL | fn foo<F: Fn(&char) -> bool + Fn(char) -> bool>(f: F) { |
| | ^^^^^^^^^^^^^^^^ required by this bound in `foo` |
| help: consider adjusting the signature so it does not borrow its argument |
| | |
| LL | foo(move |char| v); |
| | ~~~~ |
| |
| error: aborting due to 1 previous error |
| |
| For more information about this error, try `rustc --explain E0631`. |