Community
Participate
Working Groups
Compiling Bug2 yields: "The method eval(String) of type Bug2.Foo must override a superclass method", which is the same error as in javac5 but has been obsolete for a while now: javac6 accepts it. Strictly speaking this is probably a duplicate of Bug 167262 but IMO that bug does not strike the correct note of urgency: we get hard errors, no warnings, and must make lots of changes when porting from javac, only to have to undo them again when ecj is fixed. --------------------------------------------------------------------------- public class Bug2 { static interface IFoo { public boolean eval(String s); } static class Foo implements IFoo { @Override public boolean eval(String s) { return true; } } }
Eclipse behaves as you expect if you set your project to use Java 1.6 compliance. See preferences under: Java Compiler > Compiler compliance level > 1.6 btw - pls remember to specify the Eclipse build you are using
True. I must have gotten confused between the target, compliance and source flags.
Verified for 34M5 using I20080204-0010 build.