From 206b38f0ab0ddcda781dfa7836f0e5943efa0ab9 Mon Sep 17 00:00:00 2001 From: Mikhael Bogdanov Date: Mon, 1 Feb 2021 16:47:09 +0100 Subject: [PATCH] Fix compilation against asm 7.0 --- .../optimization/CapturedVarsOptimizationMethodTransformer.kt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) 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 -> {