@@ -0,0 +1,425 @@
+package bugIdeas;%0A%0Apublic class Ideas_2010_05_27 %7B%0A%09%0A%09Ideas_2010_05_27 foo() %7B%0A%09%09return new Ideas_2010_05_27();%0A%09%7D%0A%09static class A extends Ideas_2010_05_27 %7B%0A%09%09A foo() %7B%0A%09%09%09return new A();%0A%09%09%7D%0A%09%7D%0A%09static class B extends Ideas_2010_05_27 %7B %7D%0A%09%0A%09%0A//%09public static boolean test(A a, B b) %7B%0A//%09%09return a.foo().equals(b);%0A//%09%7D%0A%09public static boolean test2(A a, B b) %7B%0A%09%09Ideas_2010_05_27 o = a;%0A%09%09return o.foo().equals(b);%0A%09%7D%0A%09%0A%0A%7D%0A

test case