1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
|
error[E0053]: method `foo` has an incompatible type for trait
--> $DIR/trait-impl-fn-incompatibility.rs:9:15
|
LL | fn foo(x: i16) { }
| ^^^ expected `u16`, found `i16`
|
note: type in trait
--> $DIR/trait-impl-fn-incompatibility.rs:2:15
|
LL | fn foo(x: u16);
| ^^^
= note: expected signature `fn(u16)`
found signature `fn(i16)`
help: change the parameter type to match the trait
|
LL | fn foo(x: u16) { }
| ~~~
error[E0053]: method `bar` has an incompatible type for trait
--> $DIR/trait-impl-fn-incompatibility.rs:10:28
|
LL | fn bar(&mut self, bar: &Bar) { }
| ^^^^ types differ in mutability
|
note: type in trait
--> $DIR/trait-impl-fn-incompatibility.rs:3:28
|
LL | fn bar(&mut self, bar: &mut Bar);
| ^^^^^^^^
= note: expected signature `fn(&mut Bar, &mut Bar)`
found signature `fn(&mut Bar, &Bar)`
help: change the parameter type to match the trait
|
LL | fn bar(&mut self, bar: &mut Bar) { }
| ~~~~~~~~
error: aborting due to 2 previous errors
For more information about this error, try `rustc --explain E0053`.
|