KT-6795 J2K: When converting to type with projections, omit redundant use-site projections

#KT-6795 Fixed
This commit is contained in:
Valentin Kipyatkov
2015-03-30 13:50:23 +03:00
parent 7e50f72d5b
commit c66b20b204
11 changed files with 19 additions and 9 deletions
@@ -4,7 +4,7 @@ import kotlinApi.KotlinClass
public abstract class C(field: Int) : KotlinClass(field) {
override fun foo(mutableCollection: MutableCollection<String>, nullableCollection: Collection<out Int>?): MutableList<Any> {
override fun foo(mutableCollection: MutableCollection<String>, nullableCollection: Collection<Int>?): MutableList<Any> {
return super.foo(mutableCollection, nullableCollection)
}
}
@@ -1,2 +1,2 @@
fun pushAll(src: Collection<out E>) {
fun pushAll(src: Collection<E>) {
}
@@ -1 +1 @@
list as List<out String>
list as List<String>
@@ -1 +1 @@
class CC<T : INode, K : Node> : A() where T : Comparable<in T>, K : Collection<in K>
class CC<T : INode, K : Node> : A() where T : Comparable<T>, K : Collection<in K>
@@ -1 +1 @@
class C<T : INode> where T : Comparable<in T>
class C<T : INode> where T : Comparable<T>
@@ -1 +1 @@
class C<T : INode> : A() where T : Comparable<in T>
class C<T : INode> : A() where T : Comparable<T>
@@ -1,2 +1,2 @@
fun <T : Any, K : Node> max(coll: Collection<out T>): T where T : Comparable<in T>, K : Collection<in K> {
fun <T : Any, K : Node> max(coll: Collection<T>): T where T : Comparable<T>, K : Collection<in K> {
}
@@ -1 +1 @@
trait I<T : INode, K : Node> : II where T : Comparable<in T>, K : Collection<in K>
trait I<T : INode, K : Node> : II where T : Comparable<T>, K : Collection<in K>
@@ -1,2 +1,2 @@
fun <T : Any> max(coll: Collection<out T>): T where T : Comparable<in T> {
fun <T : Any> max(coll: Collection<T>): T where T : Comparable<T> {
}