FIR: implement checker for open members

Specifically,

1. NON_FINAL_MEMBER_IN_FINAL_CLASS
2. NON_FINAL_MEMBER_IN_OBJECT
This commit is contained in:
Tianyu Geng
2021-02-16 14:04:34 -08:00
committed by Mikhail Glukhikh
parent 3e9ff3ecda
commit 6b453d9b23
21 changed files with 165 additions and 75 deletions
@@ -54,6 +54,6 @@ interface E {
interface F {
companion object {
@JvmField
open val a = 3
<!NON_FINAL_MEMBER_IN_OBJECT!>open<!> val a = 3
}
}
@@ -16,7 +16,7 @@ object B: A() {
@JvmStatic final override fun c() {}
@JvmStatic open fun d() {}
@JvmStatic <!NON_FINAL_MEMBER_IN_OBJECT!>open<!> fun d() {}
}
class C {
@@ -28,6 +28,6 @@ class C {
@JvmStatic final override fun c() {}
@JvmStatic open fun d() {}
@JvmStatic <!NON_FINAL_MEMBER_IN_OBJECT!>open<!> fun d() {}
}
}
}
@@ -30,7 +30,7 @@ class A {
@JvmStatic override val base1: Int = 0
@JvmStatic open fun f() {}
@JvmStatic <!NON_FINAL_MEMBER_IN_OBJECT!>open<!> fun f() {}
override val base2: Int = 0
@JvmStatic get
@@ -42,4 +42,4 @@ class A {
}
@JvmStatic val z2 = 1;
}
}
@@ -30,7 +30,7 @@ class A {
@JvmStatic override val base1: Int = 0
@JvmStatic open fun f() {}
@JvmStatic <!NON_FINAL_MEMBER_IN_OBJECT!>open<!> fun f() {}
override val base2: Int = 0
@JvmStatic get
@@ -42,4 +42,4 @@ class A {
}
@JvmStatic val z2 = 1;
}
}