| 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" | |
| } | |
| // JVM_TEMPLATES: | |
| // 1 LOOKUPSWITCH | |
| // JVM_IR_TEMPLATES: | |
| // Expecting 0 LOOKUPSWITCH as there is only 2 different hash codes. An IF cascade is more efficient. | |
| // 0 LOOKUPSWITCH |