31 lines
557 B
Java
31 lines
557 B
Java
|
/*
|
||
|
* @test /nodynamiccopyright/
|
||
|
* @bug 8148213
|
||
|
* @summary Regression: nested unchecked call does not trigger erasure of return type
|
||
|
*
|
||
|
* @compile/fail/ref=T8148213.out -Werror -Xlint:unchecked -XDrawDiagnostics T8148213.java
|
||
|
*/
|
||
|
|
||
|
abstract class T8148213 {
|
||
|
|
||
|
interface R<E> { }
|
||
|
|
||
|
interface Q<T> { }
|
||
|
|
||
|
interface T {
|
||
|
<E> Q<E> n(R<E> r);
|
||
|
}
|
||
|
|
||
|
abstract <T> T isA(Class<T> t);
|
||
|
|
||
|
abstract <T> S<T> w(T t);
|
||
|
|
||
|
interface S<T> {
|
||
|
S<T> t(T value);
|
||
|
}
|
||
|
|
||
|
void f(T t, Q<String> q) {
|
||
|
w(t.n(isA(R.class))).t(q);
|
||
|
}
|
||
|
}
|