Fix supertypes calculation for types with projections

Use captured types as replacement for non top-level entries

 #KT-7296 Fixed
This commit is contained in:
Denis Zharkov
2015-12-23 12:59:42 +03:00
parent 397d2ca312
commit 722a152a74
11 changed files with 139 additions and 7 deletions
@@ -0,0 +1,16 @@
// !DIAGNOSTICS: -UNUSED_PARAMETER
// !CHECK_TYPE
// FILE: Clazz.java
public class Clazz<Psi> {
public java.util.Collection<Psi> foo() { return null; }
}
// FILE: main.kt
public fun <T, C : MutableCollection<in T>> Iterable<T>.filterTo(destination: C, predicate: (T) -> Boolean) {}
fun test(clazz: Clazz<out Any>) {
val result = java.util.ArrayList<Any>()
clazz.foo().filterTo(result) { x -> true }
}