KT-5112 Generic signature lost for a field copied from class object to containing class

#KT-5112 Fixed
This commit is contained in:
Mikhael Bogdanov
2014-06-02 13:11:45 +04:00
parent 4a7d4dffdf
commit c80901bafa
3 changed files with 33 additions and 1 deletions
@@ -0,0 +1,26 @@
package test
class G<T>(val s: T) {
}
public trait ErrorsJvmTrait {
class object {
public val param : G<String> = G("STRING")
}
}
public class ErrorsJvmClass {
class object {
public val param : G<String> = G("STRING")
}
}
fun box(): String {
val genericType = javaClass<ErrorsJvmTrait>().getField("param").getGenericType()
if (genericType.toString() != "test.G<java.lang.String>") return "fail1: $genericType"
val genericType2 = javaClass<ErrorsJvmClass>().getField("param").getGenericType()
if (genericType2.toString() != "test.G<java.lang.String>") return "fail1: genericType2"
return "OK"
}