Failed
org.eclipse.jdt.core.tests.compiler.regression.MethodVerifyTest.test201 - 12 (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;\n interface A<T3 extends K<T3> & J<? extends I>> extends J<I> {}\n ^\n both define get(), but with unrelated return types\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;\n interface B<T4 extends J<? extends I> & K<T4>> extends J<I> {}\n ^\n both define get(), but with unrelated return types\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;\n interface A<T3 extends K<T3> & J<? extends I>> extends J<I> {}\n ^\n both define get(), but with unrelated return types\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;\n interface B<T4 extends J<? extends I> & K<T4>> extends J<I> {}\n ^\n both define get(), but with unrelated return types\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;\n interface A<T3 extends K<T3> & J<? extends I>> extends J<I> {}\n ^\n both define get(), but with unrelated return types\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;\n interface B<T4 extends J<? extends I> & K<T4>> extends J<I> {}\n ^\n both define get(), but with unrelated return types\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;\n interface A<T3 extends K<T3> & J<? extends I>> extends J<I> {}\n ^\n both define get(), but with unrelated return types\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;\n interface B<T4 extends J<? extends I> & K<T4>> extends J<I> {}\n ^\n both define get(), but with unrelated return types\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 - 12 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/genie.jdt/comptest/run.1565715170219/12_20190813_125251.txt
Standard Error
--- javac err: --- A.java:4: error: types J<CAP#1> and K<T3> are incompatible; interface A<T3 extends K<T3> & J<? extends I>> extends J<I> {} ^ both define get(), but with unrelated return types 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; interface B<T4 extends J<? extends I> & K<T4>> extends J<I> {} ^ both define get(), but with unrelated return types 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 ----------------------------------------