| trait Foo { | |
| fn foo(_: fn(u8) -> ()); | |
| fn bar(_: Option<u8>); | |
| fn baz(_: (u8, u16)); | |
| fn qux() -> u8; | |
| } | |
| struct Bar; | |
| impl Foo for Bar { | |
| fn foo(_: fn(u16) -> ()) {} | |
| //~^ ERROR method `foo` has an incompatible type for trait | |
| fn bar(_: Option<u16>) {} | |
| //~^ ERROR method `bar` has an incompatible type for trait | |
| fn baz(_: (u16, u16)) {} | |
| //~^ ERROR method `baz` has an incompatible type for trait | |
| fn qux() -> u16 { 5u16 } | |
| //~^ ERROR method `qux` has an incompatible type for trait | |
| } | |
| fn main() {} |