If I add IEquatable to a class, I know that I need to add overrides to Equals, GetHashCode and (for good practice) the == and != operators.
When I override these I will check various properties in the class. However, if another (naive) developer later adds another field, they may forget to update these overrides, causing subtle and hard to find issues.
Is there a way to automatically check for added fields? e.g., an add-in or VS feature that will prevent the code from compiling unless the added field has an 'EquatableIgnore' attribute or they've used the field in all overrides.
Note that I have Resharper (so I can generate these easily) and that this question is about keeping the implementation correct if someone adds to a class with IEquatable, not how to correctly implement IEquatable.