Files
kotlin-fork/compiler/testData/codegen/bytecodeText/whenEnumOptimization/nestedWhenInCondition.kt
T
Ilya Chernikov 5b3816cce5 Test infra: refactor IGNORE_BACKEND directive
treat it as a general one, introduce *_K1 and *_K2 variants for
more specific ignoring
2022-11-12 16:28:23 +01:00

23 lines
508 B
Kotlin
Vendored

// IGNORE_BACKEND_K2: JVM_IR
// FIR_STATUS: FIR+JVM_IR generates TABLESWITCH for nested 'when' only, doesn't look critical.
// JVM_IR_TEMPLATES
// 2 (TABLE|LOOKUP)SWITCH
enum class ABCD {
A, B, C, D
}
fun test(x: ABCD, y: ABCD, ok: String): String =
when (x) {
when (y) {
ABCD.A -> ABCD.B
ABCD.B -> ABCD.C
ABCD.C -> ABCD.D
ABCD.D -> ABCD.A
} ->
ok
ABCD.A, ABCD.B, ABCD.C, ABCD.D ->
x.toString()
}