diff --git a/nj2k/src/org/jetbrains/kotlin/nj2k/conversions/ModalityConversion.kt b/nj2k/src/org/jetbrains/kotlin/nj2k/conversions/ModalityConversion.kt index 143041c2643..b0800271eb0 100644 --- a/nj2k/src/org/jetbrains/kotlin/nj2k/conversions/ModalityConversion.kt +++ b/nj2k/src/org/jetbrains/kotlin/nj2k/conversions/ModalityConversion.kt @@ -37,11 +37,13 @@ class ModalityConversion(private val context: ConversionContext) : RecursiveAppl private fun processMethod(method: JKJavaMethod) { val psi = method.psi()!! + val containingClass = method.parentOfType() method.modality = when { method.modality != Modality.ABSTRACT && (method.psi!! as PsiMethod).findSuperMethods().isNotEmpty() -> Modality.OVERRIDE method.modality == Modality.OPEN && context.converter.settings.openByDefault + && containingClass?.modality == Modality.OPEN && method.visibility != Visibility.PRIVATE -> Modality.OPEN method.modality == Modality.OPEN