diff options
Diffstat (limited to 'org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/lookup/MethodVerifier.java')
-rw-r--r-- | org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/lookup/MethodVerifier.java | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/lookup/MethodVerifier.java b/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/lookup/MethodVerifier.java index c645e1435..290fd6858 100644 --- a/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/lookup/MethodVerifier.java +++ b/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/lookup/MethodVerifier.java @@ -78,7 +78,7 @@ public abstract class MethodVerifier extends ImplicitNullAnnotationVerifier { SourceTypeBinding type; HashtableOfObject inheritedMethods; HashtableOfObject currentMethods; - /** + /** * Methods that are to be considered inherited even though they are overridden somewhere in the * hierarchy - notably for bridge method generation */ @@ -496,7 +496,7 @@ void checkForRedundantSuperinterfaces(ReferenceBinding superclass, ReferenceBind if (superInterfaces == Binding.NO_SUPERINTERFACES) return; //{ObjectTeams: implicit inheritance among roles is not visible at AST level - if (this.type.isRole()) + if (this.type.isRole()) return; // TODO: should do this check during copyinheritance.TypeLevel! // SH} @@ -602,7 +602,7 @@ void checkInheritedMethods(MethodBinding[] methods, int length, boolean[] isOver 3. if concrete method exists, check to see if its return type is compatible with all others if it is then check concrete method against abstract methods if its not, then find most specific abstract method & report abstract method must be implemented since concrete method is insufficient - if no most specific return type abstract method exists, then report incompatible return type with all inherited methods + if no most specific return type abstract method exists, then report incompatible return type with all inherited methods */ MethodBinding concreteMethod = this.type.isInterface() || methods[0].isAbstract() ? null : methods[0]; @@ -827,14 +827,14 @@ void computeInheritedMethods(ReferenceBinding superclass, ReferenceBinding[] sup } if (superIfcList.size() == 0) return; - + if (superIfcList.size() == 1) { superInterfaces = new ReferenceBinding[] { (ReferenceBinding) superIfcList.get(0) }; } else { superInterfaces = (ReferenceBinding[]) superIfcList.toArray(new ReferenceBinding[superIfcList.size()]); superInterfaces = Sorting.sortTypes(superInterfaces); } - + SimpleSet skip = findSuperinterfaceCollisions(superclass, superInterfaces); int len = superInterfaces.length; for (int i = len-1; i >= 0; i--) { @@ -846,7 +846,7 @@ void computeInheritedMethods(ReferenceBinding superclass, ReferenceBinding[] sup nextMethod : for (int m = methods.length; --m >= 0;) { // Interface methods are all abstract public MethodBinding inheritedMethod = methods[m]; //{ObjectTeams: - if ( inheritedMethod.original().problemId() == ProblemReasons.NotVisible + if ( inheritedMethod.original().problemId() == ProblemReasons.NotVisible && MethodModel.isRoleMethodInheritedFromNonPublicRegular(inheritedMethod)) continue nextMethod; // SH} |