Fix allopen call from UL methods
Fixed #KT-35577
This commit is contained in:
+4
-1
@@ -261,7 +261,10 @@ internal class UltraLightMembersCreator(
|
|||||||
|
|
||||||
override fun hasModifierProperty(name: String): Boolean {
|
override fun hasModifierProperty(name: String): Boolean {
|
||||||
|
|
||||||
if (name != PsiModifier.FINAL || !outerDeclaration.isOrdinaryClass) return hasModifier(name)
|
val hasModifierByDeclaration = hasModifier(name)
|
||||||
|
if (name != PsiModifier.FINAL) return hasModifierByDeclaration
|
||||||
|
|
||||||
|
if (!hasModifierByDeclaration) return false //AllOpen can't modify open to final
|
||||||
|
|
||||||
//AllOpen can affect on modality of the member. We ought to check if the extension could override the modality
|
//AllOpen can affect on modality of the member. We ought to check if the extension could override the modality
|
||||||
val descriptor = lazy { declaration.resolve() }
|
val descriptor = lazy { declaration.resolve() }
|
||||||
|
|||||||
Reference in New Issue
Block a user