K2: extract constant from Java enum entry properly

#KT-58002 Fixed
This commit is contained in:
Mikhail Glukhikh
2023-04-15 19:11:22 +02:00
committed by Space Team
parent 0a126a173e
commit bde0282fb1
2 changed files with 2 additions and 3 deletions
@@ -115,7 +115,7 @@ private abstract class FirToConstantValueTransformer(
return when {
symbol.fir is FirEnumEntry -> {
val classId = symbol.fir.returnTypeRef.coneTypeSafe<ConeClassLikeType>()?.classId ?: return null
val classId = symbol.callableId.classId ?: return null
EnumValue(classId, (symbol.fir as FirEnumEntry).name)
}
@@ -248,7 +248,7 @@ internal object FirToConstantValueChecker : FirDefaultVisitor<Boolean, FirSessio
val fir = symbol.fir
return when {
symbol.fir is FirEnumEntry -> symbol.fir.returnTypeRef.coneTypeSafe<ConeClassLikeType>()?.classId != null
symbol.fir is FirEnumEntry -> symbol.callableId.classId != null
symbol is FirPropertySymbol -> symbol.fir.isConst
@@ -1,7 +1,6 @@
// ISSUE: KT-58002
// TARGET_BACKEND: JVM_IR
// IGNORE_BACKEND_K2: JVM_IR
// FILE: NLS.java
import java.lang.annotation.*;