No override for private to this
This commit is contained in:
+1
-1
@@ -28,7 +28,7 @@ public class OverrideMembersHandler : OverrideImplementMembersHandler() {
|
||||
if (member is CallableMemberDescriptor
|
||||
&& (member.kind == CallableMemberDescriptor.Kind.FAKE_OVERRIDE || member.kind == CallableMemberDescriptor.Kind.DELEGATION)) {
|
||||
val overridden = member.overriddenDescriptors
|
||||
if (overridden.any { it.modality == Modality.FINAL || it.visibility.normalize() == Visibilities.PRIVATE }) continue
|
||||
if (overridden.any { it.modality == Modality.FINAL || Visibilities.isPrivate(it.visibility.normalize()) }) continue
|
||||
|
||||
class Data(
|
||||
val realSuper: CallableMemberDescriptor,
|
||||
|
||||
@@ -0,0 +1,7 @@
|
||||
open class A<out T> {
|
||||
private open fun foo(t: T) {}
|
||||
}
|
||||
|
||||
class B : A<String>() {
|
||||
<caret>
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
open class A<out T> {
|
||||
private open fun foo(t: T) {}
|
||||
}
|
||||
|
||||
class B : A<String>() {
|
||||
override fun equals(other: Any?): Boolean {
|
||||
<selection><caret>return super.equals(other)</selection>
|
||||
}
|
||||
|
||||
override fun hashCode(): Int {
|
||||
return super.hashCode()
|
||||
}
|
||||
|
||||
override fun toString(): String {
|
||||
return super.toString()
|
||||
}
|
||||
}
|
||||
@@ -152,6 +152,10 @@ public class OverrideImplementTest : AbstractOverrideImplementTest() {
|
||||
doMultiOverrideDirectoryTest()
|
||||
}
|
||||
|
||||
public fun testPrivateToThis() {
|
||||
doMultiOverrideFileTest()
|
||||
}
|
||||
|
||||
public fun testInheritVisibilities() {
|
||||
doMultiOverrideFileTest()
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user