[NI] Support fixation to subtype in completion mode calculator
Allow full compltion mode for return type depending on type parameters in contravariant position only if they have proper equality constraint.
This commit is contained in:
+17
@@ -0,0 +1,17 @@
|
||||
// !LANGUAGE: +NewInference
|
||||
// !DIAGNOSTICS: -UNUSED_PARAMETER
|
||||
|
||||
class In<in I>(arg: I)
|
||||
class Out<out O>(val prop: O)
|
||||
class Inv<T>(val prop: T)
|
||||
|
||||
interface Upper
|
||||
class Lower : Upper
|
||||
|
||||
fun <K> id(arg: K): K = arg
|
||||
|
||||
fun test(lower: Lower) {
|
||||
id<Inv<Upper>>(Inv(lower))
|
||||
id<In<Upper>>(In(lower))
|
||||
id<Out<Upper>>(Out(lower))
|
||||
}
|
||||
Reference in New Issue
Block a user