Use constraint system for comparing for specificity against a generic signature.

Drop "discrimiate generics" mode where it's unneeded.
This commit is contained in:
Dmitry Petrov
2015-12-25 15:20:43 +03:00
parent aeefdffaab
commit 02daeac41b
14 changed files with 233 additions and 79 deletions
@@ -0,0 +1,9 @@
object X1
object X2
class A<T>
fun <T1> A<T1>.foo() = X1
fun <T2> A<out T2>.foo() = X2
fun <T> A<out T>.test() = <!CANNOT_COMPLETE_RESOLVE!>foo<!>()