Files
kotlin-fork/compiler/testData/diagnostics/tests/regressions/OutProjections.kt
T
2017-11-29 02:54:26 +03:00

22 lines
456 B
Kotlin
Vendored

// !WITH_NEW_INFERENCE
class Point() {
}
class G<T>() {}
fun <T> f(<!UNUSED_PARAMETER!>expression<!> : T) : G<out T> = G<T>()
fun foo() : G<Point> {
val p = Point()
return <!NI;TYPE_MISMATCH, TYPE_MISMATCH!>f<Point>(p)<!>
}
class Out<out T>() {}
fun <T> fout(<!UNUSED_PARAMETER!>expression<!> : T) : Out<<!REDUNDANT_PROJECTION!>out<!> T> = Out<T>()
fun fooout() : Out<Point> {
val p = Point();
return <!NI;TYPE_MISMATCH!>fout<Point>(p)<!>;
}