backend: Fix uninitialized property access in LocalDeclarationsLowering

This commit is contained in:
Ilya Matveev
2017-02-01 16:08:46 +03:00
committed by ilmat192
parent f960c70c68
commit b4ee0e86d2
@@ -94,11 +94,13 @@ abstract class AbstractClosureRecorder : IrElementVisitorVoid {
} }
override fun visitVariableAccess(expression: IrValueAccessExpression) { override fun visitVariableAccess(expression: IrValueAccessExpression) {
val closureBuilder = closuresStack.peek() ?: return val closureBuilder = closuresStack.peek()
val variableDescriptor = expression.descriptor if (closureBuilder != null) {
if (variableDescriptor.containingDeclaration != closureBuilder.owner) { val variableDescriptor = expression.descriptor
closureBuilder.capturedValues.add(variableDescriptor) if (variableDescriptor.containingDeclaration != closureBuilder.owner) {
closureBuilder.capturedValues.add(variableDescriptor)
}
} }
expression.acceptChildrenVoid(this) expression.acceptChildrenVoid(this)