Community
Participate
Working Groups
Eclipse 3.2M6 on Windows XP SP2 (eclipse-SDK-3.2M6-win32.zip) Running on Sun JDK 1.5.0 Add the following two files to a Java project and set its compliance level to 1.3: public interface MyInterface { public void writeToStream(); public void readFromStream(); } public abstract class MyClass implements MyInterface { public void b() { } public void a() { writeTypeToStream(); } private void writeTypeToStream() { } } The compiler says that the call to writeTypeToStream() from MyClass.a() is an error because the method doesn't exist. This compiler error goes away if I do things like, but not limited to: - Delete method b() - Change the method name, "writeTypeToStream" to something like "c" - Delete either method from MyInterface
I'll investigate.
Reproduced. Likely a consequence of sorting methods and -target 1.1.
Problem comes from late addition of default abstract methods, which broke the ordering. Fix under testing.
This is a regression over 3.2M5, and only affects -target 1.1 case.
Added LookupTest#test061. Fixed by re-sorting if necessary when default abstract methods are inserted.
Fixed
Will post a patch on JDT/Core web page. Olivier - pls indicate in this bug, where to find it.
*** Bug 134476 has been marked as a duplicate of this bug. ***
A patch is available: See http://www.eclipse.org/jdt/core/r3.2/index.php#UPDATES Replace the existing jar for jdt/core with this one in the plugins directory of your Eclipse installation directory.
The patch works for me. I no longer see the errors.
*** Bug 135523 has been marked as a duplicate of this bug. ***
Verified for 3.2 RC1 using Build id: I20060413-0010.
Verified for bug 134476