Files
kotlin-fork/compiler/testData/diagnostics/tests/generics/projectionsScope/projectedOutSmartCast.kt
T
2016-02-02 08:17:48 +03:00

23 lines
531 B
Kotlin
Vendored

// !DIAGNOSTICS: -UNUSED_PARAMETER
class Inv<E>
class C<R> {
fun bindTo(property: Inv<R>) {}
}
fun foo(x: Any?, y: C<*>) {
y.<!MEMBER_PROJECTED_OUT!>bindTo<!>("")
if (x is C<*>) {
<!DEBUG_INFO_SMARTCAST!>x<!>.<!MEMBER_PROJECTED_OUT!>bindTo<!>("")
with(<!DEBUG_INFO_SMARTCAST!>x<!>) {
<!MEMBER_PROJECTED_OUT!>bindTo<!>("")
}
}
with(x) {
if (this is C<*>) {
<!MEMBER_PROJECTED_OUT, DEBUG_INFO_IMPLICIT_RECEIVER_SMARTCAST!>bindTo<!>("")
}
}
}