Support warning about useless cast on safe cast

#KT-13348 Fixed
This commit is contained in:
Mikhail Zarechenskiy
2017-04-07 04:56:59 +03:00
parent 107879a78a
commit 7f287a4230
12 changed files with 56 additions and 23 deletions
@@ -0,0 +1,22 @@
// !DIAGNOSTICS: -UNUSED_PARAMETER, -UNUSED_VARIABLE
fun test(x: Int?) {
val a1 = x <!USELESS_CAST!>as? Int<!>
val a2 = x <!USELESS_CAST!>as? Int?<!>
val a3 = x as? Number
val a4 = x as? Number?
val a5: Int? = x <!USELESS_CAST!>as? Int<!>
val a6: Number? = x <!USELESS_CAST!>as? Int<!>
val a7: Number? = 1 <!USELESS_CAST!>as? Number<!>
run { x <!USELESS_CAST!>as? Int<!> }
run { x as? Number }
foo(x as? Number)
if (x is Int) {
val b = x as? Int
}
}
fun foo(x: Number?) {}