vineflower icon indicating copy to clipboard operation
vineflower copied to clipboard

Modern Java decompiler aiming to be as accurate as possible, with an emphasis on output quality. Fork of the Fernflower decompiler.

Results 126 vineflower issues
Sort by recently updated
recently updated
newest added

Source code (Kotlin 1.7.10, kotlinx-coroutines-core 1.6.4): ```kotlin import kotlinx.coroutines.async import kotlinx.coroutines.runBlocking fun main() = runBlocking { val hello = async { "hello" } val world = async { "world" }...

bug
Priority: Medium
Subsystem: Variables

![error message in IDEA](https://user-images.githubusercontent.com/6596629/183750072-6f3de56d-2d55-4e37-8c56-291c91312618.png) This is in MC Classic 0.30 code so I can't share the class file, but it occurs when Proguard reuses the local variable index of a...

bug
Priority: High
Subsystem: Variables

Hello Is there a way to call the libraries associated with a class during decompilation so that there are no errors like values not being casted? ![image](https://user-images.githubusercontent.com/57654948/184592834-3be32e70-3e5d-4b59-add3-d31385ca58fe.png)

question

Hi, Your product has performed very well among the available options, but there are some problems when using it, which I request you to check and fix. like the: `INFO:...

bug
Priority: High
Subsystem: Variables

**The original title of this issue was Auto Lombok, which is why the description may not match.** The generated code could potentially look quite a lot cleaner if Lombok annotations...

enhancement
Subsystem: Statement Structure
Subsystem: Writing
Priority: Low

This handles for example self-executing JARs packaged as EXE file, which contain the JAR content at the end after the native code. These files are treated like JAR files, meaning...

enhancement
Subsystem: IO
Priority: Medium

Highly mangled loop structure with other elements makes continues with unknown closures. compiled with JDK 17.

bug
Subsystem: Statement Structure
Priority: Medium

This: Outputs this: ```java public class TestTemp { public void test() { float vvv1 = 124.01F;// 7 Object var10000 = new Object(); Objects.requireNonNull(var10000);// 8 int[][][] var2 = (int[][][])var10000; }// 20...

bug
Subsystem: Statement Structure
Priority: High

PR #45 changed the decompilation order of nodes within try blocks with finally handlers, look into why that is and see if it causes any major problems.

Subsystem: Statement Structure
Priority: Medium

It doesn't seem like there'll be time to finish this before 1.9 so this is a reminder for myself to finish it in a future version.

enhancement
Subsystem: Generics
Priority: Medium