Fix written generic signature in case of inner types

This commit is contained in:
Denis Zharkov
2015-11-10 15:28:51 +03:00
parent eea898abb5
commit 8cb85759c7
4 changed files with 105 additions and 24 deletions
+19
View File
@@ -0,0 +1,19 @@
class Outer<E, F : Number> {
inner class Inner<G, H>
}
object Foo {
fun <Y> foo(x: Outer<String, Int>.Inner<Y, CharSequence>) = 1
}
// class: Outer
// jvm signature: Outer
// generic signature: <E:Ljava/lang/Object;F:Ljava/lang/Number;>Ljava/lang/Object;
// class: Outer$Inner
// jvm signature: Outer$Inner
// generic signature: <G:Ljava/lang/Object;H:Ljava/lang/Object;>Ljava/lang/Object;
// method: Foo::foo
// jvm signature: (LOuter$Inner;)I
// generic signature: <Y:Ljava/lang/Object;>(LOuter<Ljava/lang/String;Ljava/lang/Integer;>.Inner<TY;Ljava/lang/CharSequence;>;)I