Remove '-Xjvm-default-allow-non-default-inheritance' flag. Enable such inheritance by default

#KT-47000 Fixed
This commit is contained in:
Mikhael Bogdanov
2021-12-02 10:17:24 +01:00
parent 7440c726d0
commit c0ffbe03c6
16 changed files with 14 additions and 59 deletions
@@ -6,12 +6,12 @@ interface A {
}
}
interface <!JVM_DEFAULT_THROUGH_INHERITANCE!>B<!> : A {
interface B : A {
}
open class <!JVM_DEFAULT_THROUGH_INHERITANCE!>Foo<!> : B
open class <!JVM_DEFAULT_THROUGH_INHERITANCE!>Foo2<!> : B, A
open class Foo : B
open class Foo2 : B, A
open class FooNoError : B {
override fun test() {
@@ -7,7 +7,7 @@ interface A {
}
// FILE: 2.kt
interface <!JVM_DEFAULT_THROUGH_INHERITANCE!>B<!> : A {
interface B : A {
}
@@ -23,7 +23,7 @@ open class Foo : B {
super.<!USAGE_OF_JVM_DEFAULT_THROUGH_SUPER_CALL!>test<!>()
}
}
open class <!JVM_DEFAULT_THROUGH_INHERITANCE!>Foo2<!> : B
open class Foo2 : B
open class Bar : Foo2() {
override fun test() {
@@ -45,7 +45,7 @@ class ManySupers: Foo2(), B {
}
}
class <!JVM_DEFAULT_THROUGH_INHERITANCE!>ManySupers2<!>: Foo2(), C {
class ManySupers2: Foo2(), C {
fun foo() {
super<Foo2>.test()
super<C>.<!USAGE_OF_JVM_DEFAULT_THROUGH_SUPER_CALL!>test<!>()
@@ -53,7 +53,7 @@ class <!JVM_DEFAULT_THROUGH_INHERITANCE!>ManySupers2<!>: Foo2(), C {
}
}
<!MANY_IMPL_MEMBER_NOT_IMPLEMENTED!>class <!JVM_DEFAULT_THROUGH_INHERITANCE!>ManySupers3<!><!>: Bar2(), C {
<!MANY_IMPL_MEMBER_NOT_IMPLEMENTED!>class ManySupers3<!>: Bar2(), C {
fun foo() {
super<Bar2>.test()
super<C>.<!USAGE_OF_JVM_DEFAULT_THROUGH_SUPER_CALL!>test<!>()
@@ -10,9 +10,9 @@ interface B{
}
}
<!MANY_INTERFACES_MEMBER_NOT_IMPLEMENTED!>interface <!JVM_DEFAULT_THROUGH_INHERITANCE!>AB<!><!>: A, B
<!MANY_INTERFACES_MEMBER_NOT_IMPLEMENTED!>interface AB<!>: A, B
<!MANY_INTERFACES_MEMBER_NOT_IMPLEMENTED!>interface <!JVM_DEFAULT_THROUGH_INHERITANCE!>BA<!><!>: B, A
<!MANY_INTERFACES_MEMBER_NOT_IMPLEMENTED!>interface BA<!>: B, A
interface C : A, B {
@@ -9,8 +9,8 @@ interface A {
interface B{
fun test()
}
<!MANY_INTERFACES_MEMBER_NOT_IMPLEMENTED!>interface <!JVM_DEFAULT_THROUGH_INHERITANCE!>AB<!><!> : A, B
<!MANY_INTERFACES_MEMBER_NOT_IMPLEMENTED!>interface <!JVM_DEFAULT_THROUGH_INHERITANCE!>BA<!><!> : B, A
<!MANY_INTERFACES_MEMBER_NOT_IMPLEMENTED!>interface AB<!> : A, B
<!MANY_INTERFACES_MEMBER_NOT_IMPLEMENTED!>interface BA<!> : B, A
class C : A, B {
override fun test() {
@@ -24,7 +24,7 @@ class D : B, A {
}
}
<!MANY_INTERFACES_MEMBER_NOT_IMPLEMENTED!>class <!JVM_DEFAULT_THROUGH_INHERITANCE!>E<!><!>: B, A {
<!MANY_INTERFACES_MEMBER_NOT_IMPLEMENTED!>class E<!>: B, A {
fun foo() {
super<A>.<!USAGE_OF_JVM_DEFAULT_THROUGH_SUPER_CALL!>test<!>()
}