[FE 1.0] Resolve private constructors of sealed classes same as for regular classes

^KT-44866
^KT-49729
This commit is contained in:
Dmitriy Novozhilov
2021-11-16 16:57:51 +03:00
parent e2d68fd239
commit 93378b1a04
31 changed files with 294 additions and 113 deletions
@@ -490,9 +490,9 @@ class ControlFlowInformationProviderImpl private constructor(
val receiverValue = expression.getResolvedCall(trace.bindingContext)?.getDispatchReceiverWithSmartCast()
if (DescriptorVisibilities.isVisible(receiverValue, variableDescriptor, descriptor)
if (DescriptorVisibilityUtils.isVisible(receiverValue, variableDescriptor, descriptor, languageVersionSettings)
&& setterDescriptor != null
&& !DescriptorVisibilities.isVisible(receiverValue, setterDescriptor, descriptor)
&& !DescriptorVisibilityUtils.isVisible(receiverValue, setterDescriptor, descriptor, languageVersionSettings)
) {
report(
Errors.INVISIBLE_SETTER.on(