Fix isEffectivelyActual to work with constructors correctly

This commit is contained in:
Mikhail Glukhikh
2018-11-08 11:29:01 +03:00
parent 589b377ef3
commit a04321478d
@@ -132,7 +132,8 @@ fun KtDeclaration.isEffectivelyActual(): Boolean {
return descriptor.isEffectivelyActual()
}
private fun MemberDescriptor.isEffectivelyActual() = isActual || isEnumEntryInActual()
private fun MemberDescriptor.isEffectivelyActual(): Boolean =
isActual || isEnumEntryInActual() || (this is ClassConstructorDescriptor && containingDeclaration.isEffectivelyActual())
private fun MemberDescriptor.isEnumEntryInActual() =
(DescriptorUtils.isEnumEntry(this) && (containingDeclaration as? MemberDescriptor)?.isActual == true)