Files
kotlin-fork/compiler/testData/diagnostics/tests/regressions/kt716.jet
T
2012-05-13 00:53:37 +04:00

17 lines
533 B
Plaintext

// KT-716 Type inference failed
class TypeInfo<T>
fun <T> typeinfo() : TypeInfo<T> = null <!CAST_NEVER_SUCCEEDS!>as<!> TypeInfo<T>
fun <T> TypeInfo<T>.getJavaClass() : java.lang.Class<T> {
val t : java.lang.Object = this <!CAST_NEVER_SUCCEEDS!>as<!> java.lang.Object
return <!UNCHECKED_CAST!>t.getClass() as java.lang.Class<T><!> // inferred type is Object but Serializable was expected
}
fun getJavaClass<T>() = typeinfo<T>.getJavaClass()
fun main(args : Array<String>) {
System.out.println(getJavaClass<String>)
}