Write additional type parameters for DefaultImpls methods, fix for KT-11121: BadClassFile exception for interface implemented generic properties
#KT-11121 Fixed
This commit is contained in:
@@ -0,0 +1,13 @@
|
||||
class B<M>
|
||||
|
||||
interface A<T, Y : B<T>> {
|
||||
|
||||
fun <T, L> p(p: T): T {
|
||||
return p
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
// method: A$DefaultImpls::p
|
||||
// jvm signature: (LA;Ljava/lang/Object;)Ljava/lang/Object;
|
||||
// generic signature: <T_I1:Ljava/lang/Object;Y:LB<TT_I1;>;T:Ljava/lang/Object;L:Ljava/lang/Object;>(LA<TT_I1;TY;>;TT;)TT;
|
||||
+13
@@ -0,0 +1,13 @@
|
||||
class B<M>
|
||||
|
||||
interface A<T, Y : B<T>, T_I1: T> {
|
||||
|
||||
fun <T, L> p(p: T): T {
|
||||
return p
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
// method: A$DefaultImpls::p
|
||||
// jvm signature: (LA;Ljava/lang/Object;)Ljava/lang/Object;
|
||||
// generic signature: <T_I2:Ljava/lang/Object;Y:LB<TT_I2;>;T_I1::TT_I2;T:Ljava/lang/Object;L:Ljava/lang/Object;>(LA<TT_I2;TY;TT_I1;>;TT;)TT;
|
||||
@@ -0,0 +1,11 @@
|
||||
class B<M>
|
||||
|
||||
interface A<T, Y : B<T>> {
|
||||
|
||||
val <T> T.z: T?
|
||||
get() = null
|
||||
}
|
||||
|
||||
// method: A$DefaultImpls::getZ
|
||||
// jvm signature: (LA;Ljava/lang/Object;)Ljava/lang/Object;
|
||||
// generic signature: <T_I1:Ljava/lang/Object;Y:LB<TT_I1;>;T:Ljava/lang/Object;>(LA<TT_I1;TY;>;TT;)TT;
|
||||
Reference in New Issue
Block a user