void checkAgainstInheritedMethods(MethodBinding currentMethod, MethodBinding[] methods, int length, MethodBinding[] allInheritedMethods) {
if (this.type.isAnnotationType()) { // annotation cannot override any method
problemReporter().annotationCannotOverrideMethod(currentMethod, methods[length - 1]);
return; // do not repoort against subsequent inherited methods
}
CompilerOptions options = type.scope.compilerOptions();
// need to find the overridden methods to avoid blaming this type for issues which are already reported against a supertype
// but cannot ignore an overridden inherited method completely when it comes to checking for bridge methods
int[] overriddenInheritedMethods = length > 1 ? findOverriddenInheritedMethods(methods, length) : null;
nextMethod : for (int i = length; --i >= 0;) {
MethodBinding inheritedMethod = methods[i];