Chocohead / ForgedFlower

Forge's modifications to FernFlower updated to the newest FF head
https://github.com/MinecraftForge/ForgeFlower
1 stars 1 forks source link

Classic 0.30 decompilation errors #1

Open Juuxel opened 4 years ago

Juuxel commented 4 years ago
Minecraft.run
Error thrown whilst in com/mojang/minecraft/Minecraft
Method run ()V couldn't be written.
java.lang.NullPointerException
    at org.jetbrains.java.decompiler.modules.decompiler.SwitchHelper.isEnumArray(SwitchHelper.java:98)
    at org.jetbrains.java.decompiler.modules.decompiler.SwitchHelper.simplify(SwitchHelper.java:21)
    at org.jetbrains.java.decompiler.modules.decompiler.stats.SwitchStatement.toJava(SwitchStatement.java:110)
    at org.jetbrains.java.decompiler.modules.decompiler.ExprProcessor.jmpWrapper(ExprProcessor.java:769)
    at org.jetbrains.java.decompiler.modules.decompiler.stats.SequenceStatement.toJava(SequenceStatement.java:111)
    at org.jetbrains.java.decompiler.modules.decompiler.ExprProcessor.jmpWrapper(ExprProcessor.java:769)
    at org.jetbrains.java.decompiler.modules.decompiler.stats.CatchStatement.toJava(CatchStatement.java:172)
    at org.jetbrains.java.decompiler.modules.decompiler.ExprProcessor.jmpWrapper(ExprProcessor.java:769)
    at org.jetbrains.java.decompiler.modules.decompiler.stats.SequenceStatement.toJava(SequenceStatement.java:111)
    at org.jetbrains.java.decompiler.modules.decompiler.stats.RootStatement.toJava(RootStatement.java:25)
    at org.jetbrains.java.decompiler.main.ClassWriter.methodToJava(ClassWriter.java:833)
    at org.jetbrains.java.decompiler.main.ClassWriter.classToJava(ClassWriter.java:267)
    at org.jetbrains.java.decompiler.main.ClassesProcessor.writeClass(ClassesProcessor.java:280)
    at org.jetbrains.java.decompiler.main.Fernflower.getClassContent(Fernflower.java:104)
    at org.jetbrains.java.decompiler.struct.ContextUnit.save(ContextUnit.java:157)
    at org.jetbrains.java.decompiler.struct.StructContext.saveContext(StructContext.java:64)
    at org.jetbrains.java.decompiler.main.Fernflower.decompileContext(Fernflower.java:61)
    at net.fabricmc.loom.task.fernflower.ForkedFFExecutor.runFF(ForkedFFExecutor.java:128)
    at net.fabricmc.loom.task.fernflower.ForkedFFExecutor.main(ForkedFFExecutor.java:115)
    at net.fabricmc.loom.task.fernflower.ForkedFFExecutor.main(ForkedFFExecutor.java:51)
class_155.method_468
Method method_468 ()Ljava/util/List; couldn't be decompiled.
java.lang.NullPointerException
    at org.jetbrains.java.decompiler.modules.decompiler.vars.VarProcessor.getVarOriginalIndex(VarProcessor.java:86)
    at org.jetbrains.java.decompiler.modules.decompiler.vars.VarDefinitionHelper.processExprent(VarDefinitionHelper.java:580)
    at org.jetbrains.java.decompiler.modules.decompiler.vars.VarDefinitionHelper.mergeVars(VarDefinitionHelper.java:538)
    at org.jetbrains.java.decompiler.modules.decompiler.vars.VarDefinitionHelper.mergeVars(VarDefinitionHelper.java:491)
    at org.jetbrains.java.decompiler.modules.decompiler.vars.VarDefinitionHelper.mergeVars(VarDefinitionHelper.java:491)
    at org.jetbrains.java.decompiler.modules.decompiler.vars.VarDefinitionHelper.mergeVars(VarDefinitionHelper.java:440)
    at org.jetbrains.java.decompiler.modules.decompiler.vars.VarDefinitionHelper.setVarDefinitions(VarDefinitionHelper.java:225)
    at org.jetbrains.java.decompiler.modules.decompiler.vars.VarProcessor.setVarDefinitions(VarProcessor.java:42)
    at org.jetbrains.java.decompiler.main.rels.MethodProcessorRunnable.codeToJava(MethodProcessorRunnable.java:203)
    at org.jetbrains.java.decompiler.main.rels.ClassWrapper.init(ClassWrapper.java:61)
    at org.jetbrains.java.decompiler.main.ClassesProcessor.initWrappers(ClassesProcessor.java:326)
    at org.jetbrains.java.decompiler.main.ClassesProcessor.writeClass(ClassesProcessor.java:273)
    at org.jetbrains.java.decompiler.main.Fernflower.getClassContent(Fernflower.java:104)
    at org.jetbrains.java.decompiler.struct.ContextUnit.save(ContextUnit.java:157)
    at org.jetbrains.java.decompiler.struct.StructContext.saveContext(StructContext.java:64)
    at org.jetbrains.java.decompiler.main.Fernflower.decompileContext(Fernflower.java:61)
    at net.fabricmc.loom.task.fernflower.ForkedFFExecutor.runFF(ForkedFFExecutor.java:128)
    at net.fabricmc.loom.task.fernflower.ForkedFFExecutor.main(ForkedFFExecutor.java:115)
    at net.fabricmc.loom.task.fernflower.ForkedFFExecutor.main(ForkedFFExecutor.java:51)
Statement cannot be decomposed although reducible!
class_74.method_282
Error thrown whilst in com/mojang/minecraft/class_74
Method method_282 ()V couldn't be decompiled.
java.lang.RuntimeException: parsing failure!
    at org.jetbrains.java.decompiler.modules.decompiler.DomHelper.parseGraph(DomHelper.java:200)
    at org.jetbrains.java.decompiler.main.rels.MethodProcessorRunnable.codeToJava(MethodProcessorRunnable.java:107)
    at org.jetbrains.java.decompiler.main.rels.ClassWrapper.init(ClassWrapper.java:61)
    at org.jetbrains.java.decompiler.main.ClassesProcessor.initWrappers(ClassesProcessor.java:326)
    at org.jetbrains.java.decompiler.main.ClassesProcessor.writeClass(ClassesProcessor.java:273)
    at org.jetbrains.java.decompiler.main.Fernflower.getClassContent(Fernflower.java:104)
    at org.jetbrains.java.decompiler.struct.ContextUnit.save(ContextUnit.java:157)
    at org.jetbrains.java.decompiler.struct.StructContext.saveContext(StructContext.java:64)
    at org.jetbrains.java.decompiler.main.Fernflower.decompileContext(Fernflower.java:61)
    at net.fabricmc.loom.task.fernflower.ForkedFFExecutor.runFF(ForkedFFExecutor.java:128)
    at net.fabricmc.loom.task.fernflower.ForkedFFExecutor.main(ForkedFFExecutor.java:115)
    at net.fabricmc.loom.task.fernflower.ForkedFFExecutor.main(ForkedFFExecutor.java:51)
LiquidTile.tick
Error thrown whilst in com/mojang/minecraft/level/tile/LiquidTile
Method tick (Lcom/mojang/minecraft/level/Level;IIILjava/util/Random;)V couldn't be written.
java.lang.RuntimeException: invalid constant type: Ljava/util/Random;
    at org.jetbrains.java.decompiler.modules.decompiler.exps.ConstExprent.toJava(ConstExprent.java:308)
    at org.jetbrains.java.decompiler.modules.decompiler.exps.AssignmentExprent.toJava(AssignmentExprent.java:138)
    at org.jetbrains.java.decompiler.modules.decompiler.ExprProcessor.listToJava(ExprProcessor.java:834)
    at org.jetbrains.java.decompiler.modules.decompiler.stats.BasicBlockStatement.toJava(BasicBlockStatement.java:61)
    at org.jetbrains.java.decompiler.modules.decompiler.ExprProcessor.jmpWrapper(ExprProcessor.java:769)
    at org.jetbrains.java.decompiler.modules.decompiler.stats.SequenceStatement.toJava(SequenceStatement.java:111)
    at org.jetbrains.java.decompiler.modules.decompiler.stats.RootStatement.toJava(RootStatement.java:25)
    at org.jetbrains.java.decompiler.main.ClassWriter.methodToJava(ClassWriter.java:833)
    at org.jetbrains.java.decompiler.main.ClassWriter.classToJava(ClassWriter.java:267)
    at org.jetbrains.java.decompiler.main.ClassesProcessor.writeClass(ClassesProcessor.java:280)
    at org.jetbrains.java.decompiler.main.Fernflower.getClassContent(Fernflower.java:104)
    at org.jetbrains.java.decompiler.struct.ContextUnit.save(ContextUnit.java:157)
    at org.jetbrains.java.decompiler.struct.StructContext.saveContext(StructContext.java:64)
    at org.jetbrains.java.decompiler.main.Fernflower.decompileContext(Fernflower.java:61)
    at net.fabricmc.loom.task.fernflower.ForkedFFExecutor.runFF(ForkedFFExecutor.java:128)
    at net.fabricmc.loom.task.fernflower.ForkedFFExecutor.main(ForkedFFExecutor.java:115)
    at net.fabricmc.loom.task.fernflower.ForkedFFExecutor.main(ForkedFFExecutor.java:51)
Chocohead commented 4 years ago

The top two happen quite frequently with 1.2.5 too, I fear ForgeFlower is making too many presumptions now it has an LVT in the way it didn't previously. We'll have to see how readily the presumptions can be corrected for.