KT-10460: use unsubstituted descriptors

while comparing overloaded generic functions  for specificity.
This commit is contained in:
Dmitry Petrov
2016-01-14 19:02:56 +03:00
parent d21ce08548
commit a073f29006
14 changed files with 111 additions and 26 deletions
@@ -0,0 +1,11 @@
// !DIAGNOSTICS: -UNUSED_PARAMETER -REDUNDANT_PROJECTION
class In<in T>() {
fun f(t : T) {}
fun f(t : Int) = t
}
fun test1(x: In<String>): Unit = x.f("1")
fun test2(x: In<in String>): Unit = x.f("1")
fun test3(x: In<<!CONFLICTING_PROJECTION!>out<!> String>): Unit = x.<!NONE_APPLICABLE!>f<!>("1")
fun test4(x: In<*>): Unit = x.<!NONE_APPLICABLE!>f<!>("1")