JS: fix translation of callable reference to property of outer class with private setter

This commit is contained in:
Alexey Andreev
2017-01-24 19:35:11 +03:00
parent d35ddc1017
commit 119bf52adf
7 changed files with 89 additions and 1 deletions
@@ -142,7 +142,10 @@ object CallableReferenceTranslator {
val setter = descriptor.setter ?: return false
if (setter.visibility != Visibilities.PRIVATE) return true
val classDescriptor = context.classDescriptor ?: return false
return classDescriptor == descriptor.containingDeclaration
val outerClasses = generateSequence<DeclarationDescriptor>(classDescriptor) { it.containingDeclaration }
.filterIsInstance<ClassDescriptor>()
return descriptor.containingDeclaration in outerClasses
}
private fun translateForPropertyAccessor(