FIR checker: check if callable reference targets are allowed members

This commit is contained in:
Jinseong Jeon
2021-03-17 08:41:45 -07:00
committed by Mikhail Glukhikh
parent 6769ce0e2b
commit 8d8ed4cc18
29 changed files with 299 additions and 42 deletions
@@ -7,6 +7,6 @@ enum class D
fun main() {
<!UNRESOLVED_REFERENCE!>::A<!>
::B
::C // KT-3465
<!CALLABLE_REFERENCE_TO_ANNOTATION_CONSTRUCTOR!>::C<!> // KT-3465
<!UNRESOLVED_REFERENCE!>::D<!>
}
}
@@ -1,5 +1,5 @@
annotation class Ann(val prop: String)
val annCtorRef = ::Ann
val annCtorRef = <!CALLABLE_REFERENCE_TO_ANNOTATION_CONSTRUCTOR!>::Ann<!>
val annClassRef = Ann::class
val annPropRef = Ann::prop
@@ -4,11 +4,11 @@ class A {
fun A.extA(x: String) = x
fun main() {
Int::extInt
A::extA
<!EXTENSION_IN_CLASS_REFERENCE_NOT_ALLOWED!>Int::extInt<!>
<!EXTENSION_IN_CLASS_REFERENCE_NOT_ALLOWED!>A::extA<!>
eat(Int::extInt)
eat(A::extA)
eat(<!EXTENSION_IN_CLASS_REFERENCE_NOT_ALLOWED!>Int::extInt<!>)
eat(<!EXTENSION_IN_CLASS_REFERENCE_NOT_ALLOWED!>A::extA<!>)
}
}