[FIR] Add UNCHECKED_CAST
Regenerate diagnostics code
This commit is contained in:
committed by
TeamCityServer
parent
1fbccff1bd
commit
d0a4ca199d
@@ -1 +0,0 @@
|
||||
fun f(x: Any) = x as Array<String>
|
||||
@@ -1 +1,2 @@
|
||||
// FIR_IDENTICAL
|
||||
fun f(x: Any) = x <!UNCHECKED_CAST!>as Array<String><!>
|
||||
@@ -1,2 +0,0 @@
|
||||
|
||||
fun ff(c: MutableCollection<String>) = c as MutableList<Int>
|
||||
@@ -1,2 +1,3 @@
|
||||
// FIR_IDENTICAL
|
||||
|
||||
fun ff(c: MutableCollection<String>) = c <!UNCHECKED_CAST!>as MutableList<Int><!>
|
||||
|
||||
@@ -1,2 +0,0 @@
|
||||
|
||||
fun ff(a: Any) = a as MutableList<String>
|
||||
@@ -1,2 +1,3 @@
|
||||
// FIR_IDENTICAL
|
||||
|
||||
fun ff(a: Any) = a <!UNCHECKED_CAST!>as MutableList<String><!>
|
||||
|
||||
@@ -1,34 +0,0 @@
|
||||
// See also: KT-6611 (cast can never succeed: Class<T> -> Class<Any>)
|
||||
|
||||
class Class<T>(val name: String, val instance: T)
|
||||
|
||||
fun <T> test(clazz: Class<T>) {
|
||||
println((clazz as Class<Any>).name)
|
||||
}
|
||||
|
||||
fun use() {
|
||||
test(Class("String", ""))
|
||||
}
|
||||
|
||||
fun checkArrays(): Array<Any> {
|
||||
val someArray = arrayOfNulls<Any>(5)
|
||||
someArray as Array<Int>
|
||||
return someArray as Array<Any>
|
||||
}
|
||||
|
||||
class Wrapper<T>(val x: T)
|
||||
|
||||
fun checkArrays2(): Array<Wrapper<String>> {
|
||||
val someArray = arrayOf(Wrapper(1), Wrapper(2))
|
||||
return someArray as Array<Wrapper<String>>
|
||||
}
|
||||
|
||||
fun checkArrays3() {
|
||||
val someArray = arrayOfNulls<String>(1)
|
||||
someArray as Array<Any>
|
||||
val intArray = arrayOfNulls<Int>(1)
|
||||
intArray as Array<Any>
|
||||
}
|
||||
|
||||
fun println(s: String) = s
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
// FIR_IDENTICAL
|
||||
// See also: KT-6611 (cast can never succeed: Class<T> -> Class<Any>)
|
||||
|
||||
class Class<T>(val name: String, val instance: T)
|
||||
|
||||
@@ -10,9 +10,9 @@ fun <T, S : T> test(x: T?, y: S, z: T) {
|
||||
<!USELESS_IS_CHECK!>z is T<!>
|
||||
<!USELESS_IS_CHECK!>z is T?<!>
|
||||
|
||||
null as T
|
||||
null <!UNCHECKED_CAST!>as T<!>
|
||||
null as T?
|
||||
null as S
|
||||
null <!UNCHECKED_CAST!>as S<!>
|
||||
}
|
||||
|
||||
inline fun <reified T> test(x: T?) {
|
||||
|
||||
Reference in New Issue
Block a user