java-topology/test/langtools/tools/javac/generics/6711619/T6711619a.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

51 lines
1.1 KiB
Java

/*
* @test /nodynamiccopyright/
* @bug 6711619
*
* @summary javac doesn't allow access to protected members in intersection types
* @author Maurizio Cimadamore
*
* @compile/fail/ref=T6711619a.out -XDrawDiagnostics T6711619a.java
*/
class T6711619a {
static class A {
private void a() {}
private A a;
}
static class B extends A {
private B b() {}
private B b;
}
static interface I{
void i();
}
static interface I1{
void i1();
}
static class E extends B implements I, I1{
public void i() {}
public void i1() {}
}
static class C<W extends B & I1, T extends W>{
T t;
W w;
C(W w, T t) {
this.w = w;
this.t = t;
}
}
static void testMemberMethods(C<? extends A, ? extends I> arg) {
arg.t.a();
arg.t.b();
}
static void testMemberFields(C<? extends A, ? extends I> arg) {
A ta; B tb;
ta = arg.t.a;
tb = arg.t.b;
ta = arg.w.a;
tb = arg.w.b;
}
}