diff --git a/compiler/backend/src/org/jetbrains/kotlin/codegen/optimization/CapturedVarsOptimizationMethodTransformer.kt b/compiler/backend/src/org/jetbrains/kotlin/codegen/optimization/CapturedVarsOptimizationMethodTransformer.kt index 373cf3307f7..9ca20a69b04 100644 --- a/compiler/backend/src/org/jetbrains/kotlin/codegen/optimization/CapturedVarsOptimizationMethodTransformer.kt +++ b/compiler/backend/src/org/jetbrains/kotlin/codegen/optimization/CapturedVarsOptimizationMethodTransformer.kt @@ -84,7 +84,7 @@ class CapturedVarsOptimizationMethodTransformer : MethodTransformer() { private fun AbstractInsnNode.getIndex() = methodNode.instructions.indexOf(this) private fun createRefValues() { - for (insn in methodNode.instructions) { + for (insn in methodNode.instructions.asSequence()) { if (insn.opcode == Opcodes.NEW && insn is TypeInsnNode) { val type = Type.getObjectType(insn.desc) if (AsmTypes.isSharedVarType(type)) { @@ -124,7 +124,7 @@ class CapturedVarsOptimizationMethodTransformer : MethodTransformer() { } private fun trackPops(frames: Array?>) { - for ((i, insn) in methodNode.instructions.withIndex()) { + for ((i, insn) in methodNode.instructions.asSequence().withIndex()) { val frame = frames[i] ?: continue when (insn.opcode) { Opcodes.POP -> {