Open caraiz opened 4 years ago
Some code is probably calling BooleanSetFail # add(Boolean)
. ProGuard's shrinking step then won't remove the interface.
In both cases, optimization passes might remove the interface, but this depends on the implementations and invocations,
I send you a simple example to test what happens.
Still not working with version 7.1.0
Hi, i tested again with version 7.4.1
The class is never used but its not shrinked. Seems the problem occurs when overriding a method of a generic interface.
Hi, i tested again with version 7.5.0
The result is the same, the interface is not used, but still in output. Its more critical in libraries where there are a lot of Generic Interfaces, because all those interfaces are not removed.
Hello, shrink dont work completly with the library fastutil (http://fastutil.di.unimi.it), leaving in the output jar unused classes.
Im using openjdk 13.0.2 and proguard 6.2.2.
After some tests, the problem seems be when an interface method is overrided.
The first class is removed, but the second don't.