java-topology/defects/javac/patch/javac-0005-inferencecontext-containsall-set.patch
russell@unturf.com 0a580b313d undefect. CWE-407 — 63 sites patched across 27 ecosystems
Authors: russell@unturf.com · brackishbert@gmail.com · foxhop.net · TimeHexOn.com

Patches, unit tests, benchmarks, whitepaper, and outreach briefs.
Public domain — no copyright claimed. Use freely.
2026-03-26 17:11:57 -04:00

13 lines
803 B
Diff

diff --git a/src/jdk.compiler/share/classes/com/sun/tools/javac/comp/InferenceContext.java b/src/jdk.compiler/share/classes/com/sun/tools/javac/comp/InferenceContext.java
index 8fc316c8..66a8e35a 100644
--- a/src/jdk.compiler/share/classes/com/sun/tools/javac/comp/InferenceContext.java
+++ b/src/jdk.compiler/share/classes/com/sun/tools/javac/comp/InferenceContext.java
@@ -503,7 +503,7 @@ boolean isEquiv(UndetVar from, Type t, InferenceBound boundKind) {
if (ib == boundKind.complement()) {
b2 = b2.diff(List.of(from.qtype));
}
- if (!b1.containsAll(b2) || !b2.containsAll(b1)) {
+ if (!new LinkedHashSet<>(b1).equals(new LinkedHashSet<>(b2))) {
return false;
}
}