latest push
Brian Goetz
brian.goetz at oracle.com
Thu Oct 28 07:46:14 PDT 2010
The latest push seems to have resolved the two issues I raised yesterday --
thanks!
Unfortunately there's also been a regression since yesterday. Given
public interface Collection {
public extension void foo() default Defaults.foo;
public extension void bar() default Defaults.foo;
}
public interface Set extends Collection {
public extension void foo() default Defaults.foo;
}
(both have the same method foo() with the same default).
If I have a class
public class SetImpl implements Set {
}
everything is fine. But if I write it like this:
public class SetImpl implements Set, Collection {
}
I get this error message
test-compile:
[javac] Compiling 10 source files to
/home/brian/work/mangler/trunk/defender/build/test-classes
[javac]
/home/brian/work/mangler/trunk/defender/test/src/foo/SetImpl.java:6: types
Collection and Set are incompatible; both define foo(), but with unrelated
default implementations
[javac] public class SetImpl implements Set, Collection {
[javac] ^
[javac] Note:
/home/brian/work/mangler/trunk/defender/test/src/junit/DefenderTestCase.java
uses unchecked or unsafe operations.
This compiled properly under yesterday's build.
More information about the lambda-dev
mailing list