Community
Participate
Working Groups
The following code interface I<T> { void m1(T t); void m2(T t); } class A {}; class B implements I<A> { public void m1(A a) {} public void m2(A a) {} } public class Main { public static void main(String[] args) { m(new B()); } public static void m(I<A> x) { x.m1(null); } } throws this exception: Exception in thread "main" java.lang.AbstractMethodError: B.m1 (Ljava/lang/Object;)V at Main.m(Main.java:19) at Main.main(Main.java:15) when compiled and run with Eclipse 3.1M3. The exception does not occur when the code is compiled with the Sun JDK 1.5 Compiler. It does also not occur, when x.m1(null); is replaced with x.m2(null); or if m2 is removed.
We are not generating a bridge method for #m1(Object) on B
Recording of bridge methods did not consider selector match when looking for duplicates. Added regression test: GenericTypeTest#test411. Fixed
Verified in 200412140800