Files
kotlin-fork/compiler/testData/diagnostics/tests/resolve/HiddenDeclarations.kt
T
Ilya Chernikov 6356807997 Reapply "Only create descriptors for candidates with lambda args"
#KT-36247 fixed
A lot of testdata changed because significanly less (error) descriptors
are created for unresolved types, so diagnostics became different.
2020-02-14 11:41:30 +01:00

74 lines
2.1 KiB
Kotlin
Vendored

package test
// imports should be resolved
import test.topLevelFun
import test.topLevelProperty
@Deprecated("hidden", level = DeprecationLevel.HIDDEN)
fun topLevelFun(){}
@Deprecated("hidden", level = DeprecationLevel.HIDDEN)
var topLevelProperty = 1
@Deprecated("hidden", level = DeprecationLevel.HIDDEN)
fun String.topLevelExtensionFun(){}
@Deprecated("hidden", level = DeprecationLevel.HIDDEN)
val String.topLevelExtensionProperty: Int get() = 1
open class A {
constructor(<!UNUSED_PARAMETER!>p<!>: Int) : this(<!TYPE_MISMATCH!>""<!>) {}
@Deprecated("hidden", level = DeprecationLevel.HIDDEN)
constructor(<!UNUSED_PARAMETER!>s<!>: String){}
@Deprecated("hidden", level = DeprecationLevel.HIDDEN)
open fun memberFun(){}
@Deprecated("hidden", level = DeprecationLevel.HIDDEN)
val memberProperty = 1
@Deprecated("hidden", level = DeprecationLevel.HIDDEN)
fun String.memberExtensionFun(){}
@Deprecated("hidden", level = DeprecationLevel.HIDDEN)
val String.memberExtensionProperty: Int get() = 1
fun foo() {
<!UNRESOLVED_REFERENCE!>topLevelFun<!>()
<!UNRESOLVED_REFERENCE, VARIABLE_EXPECTED!>topLevelProperty<!><!DEBUG_INFO_MISSING_UNRESOLVED!>++<!>
"".<!UNRESOLVED_REFERENCE!>topLevelExtensionFun<!>()
"".<!UNRESOLVED_REFERENCE!>topLevelExtensionProperty<!>
<!UNRESOLVED_REFERENCE!>memberFun<!>()
<!UNRESOLVED_REFERENCE!>memberProperty<!>
"".<!UNRESOLVED_REFERENCE!>memberExtensionFun<!>()
"".<!UNRESOLVED_REFERENCE!>memberExtensionProperty<!>
A(<!TYPE_MISMATCH!>""<!>)
}
}
interface I {
@Deprecated("hidden", level = DeprecationLevel.HIDDEN)
fun foo1()
@Deprecated("hidden", level = DeprecationLevel.HIDDEN)
fun foo2()
}
<!ABSTRACT_MEMBER_NOT_IMPLEMENTED!>class X<!> : I {
override fun foo1() {
}
}
class B : A(<!TYPE_MISMATCH!>""<!>) {
// still can override it
override fun memberFun() {
super.<!UNRESOLVED_REFERENCE!>memberFun<!>() // but cannot call super :)
}
}
class C : A {
constructor() : super(<!TYPE_MISMATCH!>""<!>)
}