Copy locals in addition to instructions when inlining finally blocks

^KT-46448 Fixed
This commit is contained in:
Mads Ager
2021-07-20 15:23:14 +02:00
committed by max-kammerer
parent d00fba3718
commit c0f5d09759
3 changed files with 18 additions and 9 deletions
@@ -187,6 +187,9 @@ abstract class InlineCodegen<out T : BaseExpressionCodegen>(
val splitBy = SimpleInterval(start.info as LabelNode, extension.finallyIntervalEnd)
processor.tryBlocksMetaInfo.splitAndRemoveCurrentIntervals(splitBy, true)
processor.localVarsMetaInfo.splitAndRemoveCurrentIntervals(splitBy, true)
finallyNode.localVariables.forEach {
processor.localVarsMetaInfo.addNewInterval(LocalVarNodeWrapper(it))
}
}
curInstr = curInstr.next