interface I { void g(); } class C : I { public void f(int x) { } // BAD: This method is a forwarder public void f() { f(1); } // GOOD: This forwarder implements an interface void I.g() { g(1); } void g(int x) { } // GOOD: Not a forwarder void h(int a) { h(); } // GOOD: Not a forwarder void h(double b) { h(); } void h() { } void i() { } // BAD: Forwarding method void i(int a) { i(); } }