Allow to use @JvmStatic in interface companion object

This commit is contained in:
Mikhael Bogdanov
2018-01-23 11:22:58 +01:00
parent 2340756b88
commit c4da370b0b
21 changed files with 483 additions and 23 deletions
@@ -0,0 +1,53 @@
// !DIAGNOSTICS: -UNUSED_VARIABLE
// !LANGUAGE: +JvmStaticInInterface
class A {
companion object {
@JvmStatic fun a1() {
}
}
object A {
@JvmStatic fun a2() {
}
}
fun test() {
val s = object {
<!JVM_STATIC_NOT_IN_OBJECT_OR_COMPANION!>@JvmStatic fun a3()<!> {
}
}
}
<!JVM_STATIC_NOT_IN_OBJECT_OR_COMPANION!>@JvmStatic fun a4()<!> {
}
}
interface B {
companion object {
<!JVM_STATIC_IN_INTERFACE_1_6!>@JvmStatic fun a1()<!> {
}
}
object A {
@JvmStatic fun a2() {
}
}
fun test() {
val s = object {
<!JVM_STATIC_NOT_IN_OBJECT_OR_COMPANION!>@JvmStatic fun a3()<!> {
}
}
}
<!JVM_STATIC_NOT_IN_OBJECT_OR_COMPANION!>@JvmStatic fun a4()<!> {
}
}