d50c6f1b6d
`FirUselessTypeOperationCallChecker` always checks exact types matching for `as` operator Simplify code of cast checker and utils ^KT-56629 Fixed ^KT-56615 Fixed ^KT-59820 Fixed
36 lines
596 B
Kotlin
Vendored
36 lines
596 B
Kotlin
Vendored
// ISSUE: KT-56629, KT-56615
|
|
|
|
class Klass
|
|
fun foo(arg: Klass) {
|
|
arg <!USELESS_CAST!>as Klass<!>
|
|
arg <!USELESS_CAST!>as? Klass<!>
|
|
}
|
|
|
|
fun test_1(a: Any?) {
|
|
(a as String?)!!
|
|
a.length
|
|
(a <!USELESS_CAST!>as? String<!>)!!
|
|
a.length
|
|
}
|
|
|
|
fun test_3(a: Any?) {
|
|
a as String
|
|
a <!USELESS_CAST!>as String<!>
|
|
}
|
|
|
|
fun test_4(a: Any?) {
|
|
a as String
|
|
a <!USELESS_CAST!>as? String<!>
|
|
}
|
|
|
|
fun test_5(a: Any?) {
|
|
(a as? String)!!
|
|
a.length
|
|
(a <!USELESS_CAST!>as String<!>)
|
|
}
|
|
|
|
fun test_6(a: Any?) {
|
|
(a as? String)!!
|
|
a.length
|
|
(a <!USELESS_CAST!>as? String<!>)
|
|
} |