java-topology/test/langtools/tools/javac/generics/inference/8062977/T8062977.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

29 lines
730 B
Java

/*
* @test /nodynamiccopyright/
* @bug 8062977
* @summary Inference: NullPointerException during bound incorporation
*
* @compile/fail/ref=T8062977.out -XDrawDiagnostics T8062977.java
*/
import java.util.List;
class T8062977 {
<T extends B, B> T m(Class<B> cb) { return null; }
void test1(Class<Iterable<?>> cb) {
List<Integer>[] r1 = m(cb); //fail
List<Integer> r2 = m(cb); //ok
}
void test2(Class<Iterable<?>[]> cb) {
List<Integer>[] r1 = m(cb); //ok
List<Integer> r2 = m(cb); //fail
}
void test3(Class<Iterable<?>[][]> cb) {
List<Integer>[][] r1 = m(cb); //ok
List<Integer>[] r2 = m(cb); //fail
List<Integer> r3 = m(cb); //fail
}
}