JVM_IR: fix wrong check in skipping captured vars

This commit is contained in:
Georgy Bronnikov
2019-12-11 18:41:57 +03:00
parent 26032e4297
commit bb301f8aca
8 changed files with 42 additions and 1 deletions
@@ -20,6 +20,7 @@ import org.jetbrains.kotlin.backend.common.ir.ir2string
import org.jetbrains.kotlin.backend.common.peek
import org.jetbrains.kotlin.backend.common.pop
import org.jetbrains.kotlin.backend.common.push
import org.jetbrains.kotlin.descriptors.Visibilities
import org.jetbrains.kotlin.ir.IrElement
import org.jetbrains.kotlin.ir.declarations.*
import org.jetbrains.kotlin.ir.expressions.IrFunctionAccessExpression
@@ -189,7 +190,7 @@ class ClosureAnnotator(irFile: IrFile) {
private fun processMemberAccess(declaration: IrDeclaration) {
if (declaration.isLocal) {
if (declaration is IrSimpleFunction && declaration.parent is IrClass) {
if (declaration is IrSimpleFunction && declaration.visibility != Visibilities.LOCAL) {
return
}