1 error[E0053]: method `foo` has an incompatible type for trait
2 --> $DIR/trait-impl-fn-incompatibility.rs:9:15
7 LL | fn foo(x: i16) { }
8 | ^^^ expected `u16`, found `i16`
10 = note: expected fn pointer `fn(u16)`
11 found fn pointer `fn(i16)`
13 error[E0053]: method `bar` has an incompatible type for trait
14 --> $DIR/trait-impl-fn-incompatibility.rs:10:28
16 LL | fn bar(&mut self, bar: &mut Bar);
17 | -------- type in trait
19 LL | fn bar(&mut self, bar: &Bar) { }
20 | ^^^^ types differ in mutability
22 = note: expected fn pointer `fn(&mut Bar, &mut Bar)`
23 found fn pointer `fn(&mut Bar, &Bar)`
24 help: consider change the type to match the mutability in trait
26 LL | fn bar(&mut self, bar: &mut Bar) { }
29 error: aborting due to 2 previous errors
31 For more information about this error, try `rustc --explain E0053`.