19 lines
440 B
Kotlin
Vendored
19 lines
440 B
Kotlin
Vendored
// !LANGUAGE: +VariableDeclarationInWhenSubject
|
|
// !DIAGNOSTICS: -UNUSED_VARIABLE
|
|
|
|
enum class E { FIRST, SECOND }
|
|
|
|
fun testSmartcastToEnumInSubjectInitializer1(e: E?) {
|
|
val x1 = when (val ne = e!!) {
|
|
E.FIRST -> "f"
|
|
E.SECOND -> "s"
|
|
}
|
|
}
|
|
|
|
fun testSmartcastToEnumInSubjectInitializer2(e: E?) {
|
|
val x2 = when (val ne: Any = e!!) { // NB explicit type annotation
|
|
E.FIRST -> "f"
|
|
E.SECOND -> "s"
|
|
}
|
|
}
|