Prohibit Array::class, require type arguments for reified parameters
This commit is contained in:
@@ -0,0 +1,12 @@
|
||||
import kotlin.test.*
|
||||
import kotlin.reflect.jvm.*
|
||||
|
||||
fun box(): String {
|
||||
val any = Array<Any>::class
|
||||
val string = Array<String>::class
|
||||
|
||||
assertNotEquals(any, string)
|
||||
assertNotEquals(any.java, string.java)
|
||||
|
||||
return "OK"
|
||||
}
|
||||
+3
@@ -8,6 +8,9 @@ fun box(): String {
|
||||
assertEquals("Int", Int::class.simpleName)
|
||||
assertEquals("Long", Long::class.simpleName)
|
||||
|
||||
assertEquals("Array", Array<Any>::class.simpleName)
|
||||
assertEquals("Array", Array<IntArray>::class.simpleName)
|
||||
|
||||
assertEquals("Companion", Int.Companion::class.simpleName)
|
||||
assertEquals("Companion", Double.Companion::class.simpleName)
|
||||
assertEquals("Companion", Char.Companion::class.simpleName)
|
||||
|
||||
@@ -15,11 +15,13 @@ fun box(): String {
|
||||
assertEquals("class kotlin.Int", "${Int::class}")
|
||||
assertEquals("class kotlin.Int\$Companion", "${Int.Companion::class}")
|
||||
assertEquals("class kotlin.IntArray", "${IntArray::class}")
|
||||
// TODO
|
||||
// assertEquals("class kotlin.Array", "${Array<Any>::class}")
|
||||
assertEquals("class kotlin.String", "${String::class}")
|
||||
assertEquals("class kotlin.String", "${java.lang.String::class}")
|
||||
|
||||
assertEquals("class kotlin.Array", "${Array<Any>::class}")
|
||||
assertEquals("class kotlin.Array", "${Array<Int>::class}")
|
||||
assertEquals("class kotlin.Array", "${Array<Array<String>>::class}")
|
||||
|
||||
assertEquals("class java.lang.Runnable", "${Runnable::class}")
|
||||
|
||||
return "OK"
|
||||
|
||||
Reference in New Issue
Block a user