JvmDefault. Allow non default inheritance with special flag

#KT-47000
This commit is contained in:
Mikhael Bogdanov
2021-10-30 15:00:15 +02:00
parent c9e7c5d156
commit afc149d460
24 changed files with 461 additions and 6 deletions
@@ -0,0 +1,5 @@
package base
interface UExpression {
fun evaluate(): Any? = "fail"
}
@@ -0,0 +1,7 @@
compiler/testData/compileKotlinAgainstCustomBinaries/jvmDefaultNonDefaultInheritanceSuperCall/source.kt:5:22: error: interfaces can call JVM-default members via super only within JVM-default members. Please use '-Xjvm-default=all/all-compatibility' modes for such calls
return super.evaluate()
^
compiler/testData/compileKotlinAgainstCustomBinaries/jvmDefaultNonDefaultInheritanceSuperCall/source.kt:5:22: error: super calls of '@JvmDefault' members are only allowed with -Xjvm-default option
return super.evaluate()
^
COMPILATION_ERROR
@@ -0,0 +1,7 @@
import base.*
interface KotlinEvaluatableUElement : UExpression {
override fun evaluate(): Any? {
return super.evaluate()
}
}