java-topology/test/langtools/tools/javac/lambda/methodReference/MethodRefNewInnerRawTest.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

24 lines
863 B
Java

/*
* @test /nodynamiccopyright/
* @bug 8029633
* @summary Raw inner class constructor ref should not perform diamond inference
* @compile/fail/ref=MethodRefNewInnerRawTest.out -Werror -Xlint:unchecked -XDrawDiagnostics MethodRefNewInnerRawTest.java
*/
import java.util.function.*;
class MethodRefNewInnerRawTest<T> {
class Inner1 {}
class Inner2<U> {}
Supplier<MethodRefNewInnerRawTest.Inner1> s1 = MethodRefNewInnerRawTest.Inner1::new;
Supplier<MethodRefNewInnerRawTest.Inner2> s2 = MethodRefNewInnerRawTest.Inner2::new;
Supplier<MethodRefNewInnerRawTest<T>.Inner1> s3 = MethodRefNewInnerRawTest.Inner1::new;
Supplier<MethodRefNewInnerRawTest<T>.Inner2<String>> s4 = MethodRefNewInnerRawTest.Inner2::new;
static class Outer {
class Inner3<U> {}
Supplier<Outer.Inner3<String>> s5 = Outer.Inner3::new;
}
}