Community
Participate
Working Groups
The following code reports only one error, but there should be two. ECJ reports both. public class X extends Base implements I { public static void main(String[] args) { X x = new X(); x.foo((short)5, (short)10); x.bar((short)5, (short)10); } public void foo(short s, int i) {} // No error, but should have been public void bar(short s, int i) {} // Correctly reported } interface I { public default void foo(int i, short s) {} } class Base { public void bar(int i, short s) {} }
I'll take a look. Two corrections, though: - the two versions of foo can either be overriding or ambiguous, not both - "ECJ reports both" should be "javac reports both"
So you can work on G related issues without distraction, I'll take over this one.
Test released here: http://git.eclipse.org/c/jdt/eclipse.jdt.core.git/commit/?h=BETA_JAVA8&id=041f5c7c1b5d406b904fd03b60472d45690a364f *** This bug has been marked as a duplicate of bug 423803 ***