KT-6698 Bad class file when using a star-projection on a Java's recursive generic parameter

#KT-6698 Fixed
This commit is contained in:
Andrey Breslav
2015-01-30 18:49:30 +03:00
parent 8d5a6d729e
commit da639039bd
61 changed files with 996 additions and 847 deletions
@@ -3,4 +3,4 @@ fun listOfStar(): List<*> = throw Exception()
// method: _DefaultPackage::listOfStar
// jvm signature: ()Ljava/util/List;
// generic signature: ()Ljava/util/List<Ljava/lang/Object;>;
// generic signature: ()Ljava/util/List<*>;
@@ -0,0 +1,7 @@
class C<T : C<T>> {
fun foo(c: C<*>): C<*> = null!!
}
// method: C::foo
// jvm signature: (LC;)LC;
// generic signature: (LC<*>;)LC<*>;
@@ -0,0 +1,11 @@
class C<T : C<T>> {
fun foo(c: C<*>) {}
}
open class Super<T>
class Sub: Super<C<*>>()
// class: Sub
// jvm signature: Sub
// generic signature: LSuper<LC<*>;>;Lkotlin/jvm/internal/KObject;
@@ -0,0 +1,7 @@
class C<T : C<T>>
fun bar(c: C<*>): C<*> = null!!
// method: _DefaultPackage::bar
// jvm signature: (LC;)LC;
// generic signature: (LC<*>;)LC<*>;