java-topology/test/langtools/tools/javac/patterns/BindingsExistTest.java
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

30 lines
760 B
Java

/*
* @test /nodynamiccopyright/
* @bug 8231827
* @summary Clashing bindings are reported correctly
* @compile/fail/ref=BindingsExistTest.out -XDrawDiagnostics BindingsExistTest.java
*/
public class BindingsExistTest {
public void t(Object o1, Object o2) {
if (o1 instanceof String k && o2 instanceof Integer k) {}
if (o1 instanceof String k || o2 instanceof Integer k) {}
if (!(o1 instanceof String k)) {
return ;
}
if (o1 instanceof Integer k) {}
String s2 = "";
if (o1 instanceof String s2) {}
if (o1 instanceof String s3) {
String s3 = "";
}
if (!(o1 instanceof String s4)) {
return ;
}
String s4 = "";
}
}