### Eclipse Workspace Patch 1.0 #P org.eclipse.jdt.core Index: codeassist/org/eclipse/jdt/internal/codeassist/CompletionEngine.java =================================================================== RCS file: /home/eclipse/org.eclipse.jdt.core/codeassist/org/eclipse/jdt/internal/codeassist/CompletionEngine.java,v retrieving revision 1.286 diff -u -r1.286 CompletionEngine.java --- codeassist/org/eclipse/jdt/internal/codeassist/CompletionEngine.java 19 Apr 2006 13:33:37 -0000 1.286 +++ codeassist/org/eclipse/jdt/internal/codeassist/CompletionEngine.java 19 Apr 2006 14:47:29 -0000 @@ -3903,7 +3903,7 @@ continue next; if (CharOperation.equals(method.selector, otherMethod.selector, true) - && method.areParametersEqual(otherMethod)) { + && lookupEnvironment.methodVerifier().doesMethodOverride(otherMethod, method)) { if (method.declaringClass.isSuperclassOf(otherMethod.declaringClass)) continue next; @@ -6853,4 +6853,4 @@ } return name; } -} +} \ No newline at end of file #P org.eclipse.jdt.core.tests.model Index: src/org/eclipse/jdt/core/tests/model/CompletionTests_1_5.java =================================================================== RCS file: /home/eclipse/org.eclipse.jdt.core.tests.model/src/org/eclipse/jdt/core/tests/model/CompletionTests_1_5.java,v retrieving revision 1.65 diff -u -r1.65 CompletionTests_1_5.java --- src/org/eclipse/jdt/core/tests/model/CompletionTests_1_5.java 19 Apr 2006 13:33:19 -0000 1.65 +++ src/org/eclipse/jdt/core/tests/model/CompletionTests_1_5.java 19 Apr 2006 14:47:43 -0000 @@ -8659,4 +8659,41 @@ "ZZZNeedsImportEnum[TYPE_REF]{ZZZNeedsImportEnum, pack, Lpack.ZZZNeedsImportEnum;, null, null, " + (R_DEFAULT + R_INTERESTING + R_CASE + R_EXACT_EXPECTED_TYPE + R_UNQUALIFIED + R_NON_RESTRICTED) + "}", requestor.getResults()); } +// https://bugs.eclipse.org/bugs/show_bug.cgi?id=95829 +public void test0286() throws JavaModelException { + this.workingCopies = new ICompilationUnit[3]; + this.workingCopies[0] = getWorkingCopy( + "/Completion/src/test/Test.java", + "package test;\n"+ + "public class Test {\n"+ + " void bar(Test2 t) {\n"+ + " t.fo\n"+ + " }\n"+ + "}\n"); + + this.workingCopies[1] = getWorkingCopy( + "/Completion/src/test/Test1.java", + "package test;\n"+ + "public class Test1 {\n"+ + " T[] foo(T[] t);\n"+ + "}\n"); + + this.workingCopies[2] = getWorkingCopy( + "/Completion/src/test/Test2.java", + "package test;\n"+ + "public interface Test2 extends Test1 {\n"+ + " T[] foo(T[] t);\n"+ + "}\n"); + + CompletionTestsRequestor2 requestor = new CompletionTestsRequestor2(true); + + String str = this.workingCopies[0].getSource(); + String completeBehind = "t.fo"; + int cursorLocation = str.lastIndexOf(completeBehind) + completeBehind.length(); + this.workingCopies[0].codeComplete(cursorLocation, requestor, this.wcOwner); + + assertResults( + "foo[METHOD_REF]{foo(), Ltest.Test2;, ([TT;)[TT;, foo, (t), " + (R_DEFAULT + R_INTERESTING + R_CASE + R_NON_STATIC + R_NON_RESTRICTED) + "}", + requestor.getResults()); +} }