From c25e3cf3f56ce33eb8ac3c75c13213cfc43a6064 Mon Sep 17 00:00:00 2001 From: shedaniel Date: Fri, 13 Nov 2020 01:02:47 +0800 Subject: [PATCH] Set the maxStack --- .../kotlin/me/shedaniel/architect/plugin/TransformExpect.kt | 1 + .../kotlin/me/shedaniel/architect/plugin/utils/Transform.kt | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/src/main/kotlin/me/shedaniel/architect/plugin/TransformExpect.kt b/src/main/kotlin/me/shedaniel/architect/plugin/TransformExpect.kt index 3ac7b50..c467ee3 100644 --- a/src/main/kotlin/me/shedaniel/architect/plugin/TransformExpect.kt +++ b/src/main/kotlin/me/shedaniel/architect/plugin/TransformExpect.kt @@ -61,6 +61,7 @@ fun transformExpectPlatform(): (ClassNode, (String, ByteArray) -> Unit) -> Class ) method.instructions.addReturn(returnValue.first { it != '[' }) + method.maxStack = index } } diff --git a/src/main/kotlin/me/shedaniel/architect/plugin/utils/Transform.kt b/src/main/kotlin/me/shedaniel/architect/plugin/utils/Transform.kt index eebf48f..e7bbd93 100644 --- a/src/main/kotlin/me/shedaniel/architect/plugin/utils/Transform.kt +++ b/src/main/kotlin/me/shedaniel/architect/plugin/utils/Transform.kt @@ -26,7 +26,7 @@ object Transform { if ((reader.access and Opcodes.ACC_MODULE) == 0) { val node = ClassNode(Opcodes.ASM8) reader.accept(node, ClassReader.EXPAND_FRAMES) - val writer = ClassWriter(ClassWriter.COMPUTE_MAXS) + val writer = ClassWriter(0) transform(node) { name, bytes -> File(output.toFile().parentFile, "$name.class").also { it.delete()