Files
kotlin-fork/compiler/testData/diagnostics/tests/Casts.kt
T
Dmitry Petrov df6d4f358a KT-22274 report warning on labels that can't be referenced
Labels are meaningful only if they can be referenced by 'break',
'continue', or 'return' expressions.
2018-07-25 12:08:20 +03:00

24 lines
613 B
Kotlin
Vendored

// !CHECK_TYPE
fun test() : Unit {
var x : Int? = 0
var y : Int = 0
checkSubtype<Int?>(x)
checkSubtype<Int>(y)
checkSubtype<Int>(x as Int)
checkSubtype<Int>(y <!USELESS_CAST!>as Int<!>)
checkSubtype<Int?>(x as Int?)
checkSubtype<Int?>(y as Int?)
checkSubtype<Int?>(x as? Int)
checkSubtype<Int?>(y as? Int)
checkSubtype<Int?>(x as? Int?)
checkSubtype<Int?>(y as? Int?)
val <!UNUSED_VARIABLE!>s<!> = "" as Any
("" as String?)?.length
(<!REDUNDANT_LABEL_WARNING!>data@<!>("" as String?))?.length
(<!WRONG_ANNOTATION_TARGET!>@MustBeDocumented()<!>( "" as String?))?.length
Unit
}