type Identity { fn id(x: X) -> X { return x } } interface Id { fn id(x: X) -> X } fn useId(value: X) -> X { return F.id(value) } pub fn main(world: World) -> Void raises { let value: i32 = useId(1) if value == 1 { check world.out.write("interface method generic ok\n") } }