'function' : cannot override 'accessor' because it is a special compiler-generated method
A property declaration created a hidden virtual method (accessor) named Getproperty_name. That accessor name conflicts with a method name. You can only override this accessor method through a property override not a method override.
The following sample generates CS0561:
class B { public int Prop { virtual get { return 0; } } } class C : B { public override int GetProp() { // CS0561 return 0; } // try the following instead /* public override int Prop { get { return 0; } } */ }