diff --git a/core/descriptors/src/org/jetbrains/kotlin/renderer/DescriptorRendererImpl.kt b/core/descriptors/src/org/jetbrains/kotlin/renderer/DescriptorRendererImpl.kt index 05aca0aa07b..8f2b2c7dbc3 100644 --- a/core/descriptors/src/org/jetbrains/kotlin/renderer/DescriptorRendererImpl.kt +++ b/core/descriptors/src/org/jetbrains/kotlin/renderer/DescriptorRendererImpl.kt @@ -723,7 +723,8 @@ internal class DescriptorRendererImpl( private fun renderConstructor(constructor: ConstructorDescriptor, builder: StringBuilder) { builder.renderAnnotations(constructor) - val visibilityRendered = renderVisibility(constructor.visibility, builder) + val visibilityRendered = (options.renderDefaultVisibility || constructor.constructedClass.modality != Modality.SEALED) + && renderVisibility(constructor.visibility, builder) renderMemberKind(constructor, builder) val constructorKeywordRendered = renderConstructorKeyword || !constructor.isPrimary || visibilityRendered diff --git a/idea/testData/multiModuleQuickFix/createActual/sealed/header/header.kt b/idea/testData/multiModuleQuickFix/createActual/sealed/header/header.kt index 4e4e7ad14b0..0fd0a1f9816 100644 --- a/idea/testData/multiModuleQuickFix/createActual/sealed/header/header.kt +++ b/idea/testData/multiModuleQuickFix/createActual/sealed/header/header.kt @@ -1,6 +1,6 @@ // "Create actual class for module testModule_JS (JS)" "true" -expect sealed class Sealed { +expect sealed class Sealed() { object Obj : Sealed class Klass(x: Int) : Sealed diff --git a/idea/testData/multiModuleQuickFix/createActual/sealed/header/header.kt.after b/idea/testData/multiModuleQuickFix/createActual/sealed/header/header.kt.after index 2f57bfd3ba5..5e5d43a061d 100644 --- a/idea/testData/multiModuleQuickFix/createActual/sealed/header/header.kt.after +++ b/idea/testData/multiModuleQuickFix/createActual/sealed/header/header.kt.after @@ -1,6 +1,6 @@ // "Create actual class for module testModule_JS (JS)" "true" -expect sealed class Sealed { +expect sealed class Sealed() { object Obj : Sealed class Klass(x: Int) : Sealed diff --git a/idea/testData/multiModuleQuickFix/createActual/sealed/js/Sealed.kt.after b/idea/testData/multiModuleQuickFix/createActual/sealed/js/Sealed.kt.after index 1af589034d5..90473a659d5 100644 --- a/idea/testData/multiModuleQuickFix/createActual/sealed/js/Sealed.kt.after +++ b/idea/testData/multiModuleQuickFix/createActual/sealed/js/Sealed.kt.after @@ -1,5 +1,5 @@ // Sealed: to be implemented -actual sealed class Sealed { +actual sealed class Sealed actual constructor() { actual object Obj : Sealed() actual class Klass actual constructor(x: Int) : Sealed() diff --git a/idea/testData/multiModuleQuickFix/createExpect/sealedClass/header/My.kt.after b/idea/testData/multiModuleQuickFix/createExpect/sealedClass/header/My.kt.after index 69ac0d8cd52..ec216854e37 100644 --- a/idea/testData/multiModuleQuickFix/createExpect/sealedClass/header/My.kt.after +++ b/idea/testData/multiModuleQuickFix/createExpect/sealedClass/header/My.kt.after @@ -1,6 +1,6 @@ // My: to be implemented // DISABLE-ERRORS -expect sealed class My private constructor(x: Double) { +expect sealed class My(x: Double) { abstract val num: Int open fun isGood(): Boolean