[FIR][checkers] Respect ClassKind.INTERFACE in FirRegularClass.canHaveAbstractDeclaration
A Kotlin interface can have abstract members regardless of its modality. However, this invariant was previously ignored by FIR checkers. As a result, false-positive `ABSTRACT_<MEMBER>_IN_NON_ABSTRACT_CLASS` errors were being reported in explicitly non-abstract interfaces. This commit makes a relevant FIR utility used by relevant FIR checkers aware of the aforementioned invariant. #KT-66260 Fixed
This commit is contained in:
committed by
Space Team
parent
e0b83def00
commit
2de0e4b8d2
@@ -62,7 +62,7 @@ inline val FirClass.isEnumClass: Boolean
|
||||
inline val FirRegularClass.isSealed: Boolean get() = status.modality == Modality.SEALED
|
||||
|
||||
inline val FirRegularClass.canHaveAbstractDeclaration: Boolean
|
||||
get() = isAbstract || isSealed || isEnumClass
|
||||
get() = isInterface || isAbstract || isSealed || isEnumClass
|
||||
|
||||
inline val FirRegularClass.isCompanion: Boolean get() = status.isCompanion
|
||||
inline val FirRegularClass.isData: Boolean get() = status.isData
|
||||
|
||||
Reference in New Issue
Block a user