[java-analysis] Analysis: warning fixed

prev instanceof CallResultValue was (correctly) marked as 'always true', likely based on the previous curr.getClass() == prev.getClass() condition

GitOrigin-RevId: 5473a7c96030777e87de22e1425f296bbeaa2221
This commit is contained in:
Tagir Valeev
2024-06-14 16:05:02 +00:00
committed by intellij-monorepo-bot
parent bab3d819b5
commit d0e4f5f297
@@ -15,7 +15,6 @@ import org.jetbrains.org.objectweb.asm.tree.analysis.Frame;
import java.util.ArrayList;
import java.util.List;
import java.util.Set;
final class AbstractValues {
static final class ParamValue extends BasicValue {
@@ -126,9 +125,9 @@ final class AbstractValues {
static boolean equiv(BasicValue curr, BasicValue prev) {
if (curr == prev) return true;
if (curr.getClass() == prev.getClass()) {
if (curr instanceof CallResultValue && prev instanceof CallResultValue) {
List<EKey> keys1 = ((CallResultValue)prev).inters;
List<EKey> keys2 = ((CallResultValue)curr).inters;
if (curr instanceof CallResultValue currRes && prev instanceof CallResultValue prevRes) {
List<EKey> keys1 = prevRes.inters;
List<EKey> keys2 = currRes.inters;
return keys1.size() == keys2.size() && keys1.containsAll(keys2);
}
else return true;