java-decompiler/jd-core

Not needed array creation for varargs call

Marcono1234 opened this issue · 0 comments

Version

1.1.3+, Commit 7f01508

Description

When decompiling a varargs method call currently always a new array creation is emitted, even though this is not always necessary.

However, in some cases the array creation is required, e.g. when overloaded methods are called.

Source:

class Test {
    void varargs(int... i) { }

    void test() {
        varargs(1, 2, 3);
    }
}

Decompiled output:

class Test {
    void varargs(int... i) { }

    void test() {
        varargs(new int[] { 1, 2, 3 });
    }
}