Failed
org.eclipse.jdt.core.tests.compiler.regression.MethodVerifyTest.test201 - 10 (from org.eclipse.jdt.core.tests.compiler.regression.TestAll)
Error Message
test201 - Javac found error(s) but Eclipse did not find any. ----------- Expected ------------ ------------ but was ------------ A.java:4: error: types J<CAP#1> and K<T3> are incompatible; both define get(), but with unrelated return types\n interface A<T3 extends K<T3> & J<? extends I>> extends J<I> {}\n ^\n where T3 is a type-variable:\n T3 extends K<T3>,J<? extends I> declared in interface A\n where CAP#1 is a fresh type-variable:\n CAP#1 extends I from capture of ? extends I\n A.java:5: error: types K<T4> and J<CAP#1> are incompatible; both define get(), but with unrelated return types\n interface B<T4 extends J<? extends I> & K<T4>> extends J<I> {}\n ^\n where T4 is a type-variable:\n T4 extends J<? extends I>,K<T4> declared in interface B\n where CAP#1 is a fresh type-variable:\n CAP#1 extends I from capture of ? extends I\n 2 errors\n --------- Difference is ---------- expected:<[]> but was:<[A.java:4: error: types J<CAP#1> and K<T3> are incompatible; both define get(), but with unrelated return types\n interface A<T3 extends K<T3> & J<? extends I>> extends J<I> {}\n ^\n where T3 is a type-variable:\n T3 extends K<T3>,J<? extends I> declared in interface A\n where CAP#1 is a fresh type-variable:\n CAP#1 extends I from capture of ? extends I\n A.java:5: error: types K<T4> and J<CAP#1> are incompatible; both define get(), but with unrelated return types\n interface B<T4 extends J<? extends I> & K<T4>> extends J<I> {}\n ^\n where T4 is a type-variable:\n T4 extends J<? extends I>,K<T4> declared in interface B\n where CAP#1 is a fresh type-variable:\n CAP#1 extends I from capture of ? extends I\n 2 errors\n ]>
Stacktrace
junit.framework.ComparisonFailure: test201 - Javac found error(s) but Eclipse did not find any. ----------- Expected ------------ ------------ but was ------------ A.java:4: error: types J<CAP#1> and K<T3> are incompatible; both define get(), but with unrelated return types\n interface A<T3 extends K<T3> & J<? extends I>> extends J<I> {}\n ^\n where T3 is a type-variable:\n T3 extends K<T3>,J<? extends I> declared in interface A\n where CAP#1 is a fresh type-variable:\n CAP#1 extends I from capture of ? extends I\n A.java:5: error: types K<T4> and J<CAP#1> are incompatible; both define get(), but with unrelated return types\n interface B<T4 extends J<? extends I> & K<T4>> extends J<I> {}\n ^\n where T4 is a type-variable:\n T4 extends J<? extends I>,K<T4> declared in interface B\n where CAP#1 is a fresh type-variable:\n CAP#1 extends I from capture of ? extends I\n 2 errors\n --------- Difference is ---------- expected:<[]> but was:<[A.java:4: error: types J<CAP#1> and K<T3> are incompatible; both define get(), but with unrelated return types\n interface A<T3 extends K<T3> & J<? extends I>> extends J<I> {}\n ^\n where T3 is a type-variable:\n T3 extends K<T3>,J<? extends I> declared in interface A\n where CAP#1 is a fresh type-variable:\n CAP#1 extends I from capture of ? extends I\n A.java:5: error: types K<T4> and J<CAP#1> are incompatible; both define get(), but with unrelated return types\n interface B<T4 extends J<? extends I> & K<T4>> extends J<I> {}\n ^\n where T4 is a type-variable:\n T4 extends J<? extends I>,K<T4> declared in interface B\n where CAP#1 is a fresh type-variable:\n CAP#1 extends I from capture of ? extends I\n 2 errors\n ]> at org.eclipse.jdt.core.tests.compiler.regression.MethodVerifyTest.test201(MethodVerifyTest.java:11429)
Standard Output
org.eclipse.jdt.core.tests.compiler.regression.MethodVerifyTest#test201 - 10 A.java [ interface I {} interface J<T1> { J<T1> get(); } interface K<T2 extends J<? extends I>> { T2 get(); } interface A<T3 extends K<T3> & J<? extends I>> extends J<I> {} interface B<T4 extends J<? extends I> & K<T4>> extends J<I> {} ] Full results sent to /tmp/comptest/run.1584245034298/10.0.2_20200315_040443.txt
Standard Error
--- javac err: --- A.java:4: error: types J<CAP#1> and K<T3> are incompatible; both define get(), but with unrelated return types interface A<T3 extends K<T3> & J<? extends I>> extends J<I> {} ^ where T3 is a type-variable: T3 extends K<T3>,J<? extends I> declared in interface A where CAP#1 is a fresh type-variable: CAP#1 extends I from capture of ? extends I A.java:5: error: types K<T4> and J<CAP#1> are incompatible; both define get(), but with unrelated return types interface B<T4 extends J<? extends I> & K<T4>> extends J<I> {} ^ where T4 is a type-variable: T4 extends J<? extends I>,K<T4> declared in interface B where CAP#1 is a fresh type-variable: CAP#1 extends I from capture of ? extends I 2 errors ----------------------------------------