// FIR_IDENTICAL // ISSUE: KT-56942 // FILE: EnumJava.java public enum EnumJava { JAVA_ONE, JAVA_TWO; public static EnumJava provide() { return EnumJava.JAVA_ONE; } } // FILE: EnumProviderJava.java public class EnumProviderJava { public static EnumJava provide() { return EnumJava.JAVA_ONE; } } // FILE: main.kt enum class EnumKotlin { KOTLIN_ONE, KOTLIN_TWO; companion object { fun provide(): EnumKotlin = EnumKotlin.KOTLIN_ONE } } fun test_1(ejp: EnumJava, ekp: EnumKotlin) { when (ejp) { EnumJava.JAVA_ONE -> {} } when (ekp) { EnumKotlin.KOTLIN_ONE -> {} } when (EnumJava.provide()) { EnumJava.JAVA_ONE -> {} } when (EnumKotlin.provide()) { EnumKotlin.KOTLIN_ONE -> {} } } fun test_2(ejp: EnumJava, ekp: EnumKotlin) { when (ejp) {} when (ekp) {} when (EnumProviderJava.provide()) {} when (EnumKotlin.provide()) {} }