blob: 118aff69e4e6ba771fac97acb14780ae64239b30 [file] [log] [blame]
//! This test verifies that implementing a trait method with a signature that does not
//! exactly match its declaration in the trait results in a compilation error.
//! Specifically, it checks for errors when the number of parameters or the return type
//! in the `impl` differs from the trait definition.
trait Foo {
fn foo(&mut self, x: i32, y: i32) -> i32;
}
impl Foo for i32 {
fn foo(
&mut self, //~ ERROR method `foo` has 2 parameters but the declaration
x: i32,
) {
}
}
fn main() {}