do not create fake descriptors when override private functions
This commit is contained in:
@@ -156,6 +156,9 @@ public class OverrideResolver {
|
||||
List<CallableMemberDescriptor> fakeOverrides = Lists.newArrayList();
|
||||
|
||||
for (CallableMemberDescriptor functionFromSupertype : functionsFromSupertypes) {
|
||||
if (!Visibilities.isVisible(functionFromSupertype, current)) {
|
||||
continue;
|
||||
}
|
||||
|
||||
boolean overrides = false;
|
||||
|
||||
|
||||
@@ -93,9 +93,6 @@ public class OverridingUtil {
|
||||
|
||||
@NotNull
|
||||
public static OverrideCompatibilityInfo isOverridableBy(@NotNull CallableDescriptor superDescriptor, @NotNull CallableDescriptor subDescriptor) {
|
||||
if (!Visibilities.isVisible(superDescriptor, subDescriptor)) {
|
||||
return OverrideCompatibilityInfo.invisibleMember();
|
||||
}
|
||||
if (superDescriptor instanceof FunctionDescriptor) {
|
||||
if (subDescriptor instanceof PropertyDescriptor) return OverrideCompatibilityInfo.memberKindMismatch();
|
||||
}
|
||||
@@ -321,11 +318,6 @@ public class OverridingUtil {
|
||||
return new OverrideCompatibilityInfo(Result.INCOMPATIBLE, "varOverriddenByVal"); // TODO
|
||||
}
|
||||
|
||||
@NotNull
|
||||
public static OverrideCompatibilityInfo invisibleMember() {
|
||||
return new OverrideCompatibilityInfo(Result.INCOMPATIBLE, "invisibleMember");
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
private final Result overridable;
|
||||
|
||||
Reference in New Issue
Block a user