Files
kotlin/compiler/testData/codegen/boxWithStdlib/whenStringOptimization/duplicatingItemsSameHashCode.kt
Denis Zharkov d4cb822ee8 When by String constants:
Generate TABLESWITCH/LOOKUPSWITCH bytecode operation for when operator by String constants
2014-07-21 17:13:56 +04:00

25 lines
474 B
Kotlin
Vendored

import kotlin.test.assertEquals
fun foo(x : String) : String {
assert("abz]".hashCode() == "aby|".hashCode())
when (x) {
"abz]" -> return "abz"
"ghi" -> return "ghi"
"aby|" -> return "aby"
"abz]" -> return "fail"
}
return "other"
}
fun box() : String {
assertEquals("abz", foo("abz]"))
assertEquals("aby", foo("aby|"))
assertEquals("ghi", foo("ghi"))
assertEquals("other", foo("xyz"))
return "OK"
}