Files
kotlin-fork/compiler/testData/diagnostics/tests/extensions/contextReceivers/unsupported.fir.kt
T
Anastasia.Nekrasova c04767f1f4 [K2] Disappeared UNSUPPORTED_FEATURE (2)
Added a check for the enabled context receivers feature flag for declaration.

^KT-59913
2023-11-22 06:04:13 +00:00

46 lines
1.3 KiB
Kotlin
Vendored

// !DIAGNOSTICS: -UNCHECKED_CAST
<!UNSUPPORTED_FEATURE!>context(Any)<!>
fun f(g: <!UNSUPPORTED_FEATURE!>context(Any) () -> Unit<!>, value: Any): <!UNSUPPORTED_FEATURE!>context(A) () -> Unit<!> {
return value as <!UNSUPPORTED_FEATURE!>(context(A) () -> Unit)<!>
}
fun f(g: () -> Unit, value: Any) : () -> Unit {
return g
}
<!UNSUPPORTED_FEATURE!>context(Any)<!>
fun sameAsFWithoutNonContextualCounterpart(g: () -> Unit, value: Any) : () -> Unit {
return g
}
<!UNSUPPORTED_FEATURE!>context(Any)<!> val p get() = 42
<!UNSUPPORTED_FEATURE!>context(String, Int)<!>
class D constructor(){}
<!UNSUPPORTED_FEATURE!>context(String, Int)<!>
class C(){}
<!UNSUPPORTED_FEATURE!>context(String, Int)<!>
class A {
<!UNSUPPORTED_FEATURE!>context(Any)<!>
val p: Any get() = 42
<!UNSUPPORTED_FEATURE!>context(String, Int)<!>
fun m() {}
}
fun useWithContextReceivers() {
with(42) {
with("") {
f({}, 42)
<!UNSUPPORTED_CONTEXTUAL_DECLARATION_CALL!>sameAsFWithoutNonContextualCounterpart<!>({}, 42)
<!UNSUPPORTED_CONTEXTUAL_DECLARATION_CALL!>p<!>
val a = <!UNSUPPORTED_CONTEXTUAL_DECLARATION_CALL!>A<!>()
a.<!UNSUPPORTED_CONTEXTUAL_DECLARATION_CALL!>p<!>
a.<!UNSUPPORTED_CONTEXTUAL_DECLARATION_CALL!>m<!>()
}
}
}