Project: JDT
Bug 90139 [1.5][quick fix] 'Add unimplemented method' results in arg0, arg1 ... when using $T as type param
Reported: 2005-04-04 06:20:01 | Status: resolved fixed

This is a minor but strange bug... When using a type parameter that starts with $ and that type parameter appears in an abstract method as a type of a formal parameter, the 'Add unimplemented method' quick fix, applied to a subclass creates a method signature with parameter names arg0, arg1, ... instead of using the parameter names of the overridden method. Example: abstract class Test<$T> { abstract void test($T a); } class Foo extends Test<Object> { } Now, applying the quick fix 'Add unimplemented methods' on Foo results in: class Foo extends Test<Object> { void test(Object arg0) { } } So the parameter a is replaced by arg0. This does not happen when using T instead of $T for example.

Files changed in fix:
org.eclipse.jdt.ui/core extension/org/eclipse/jdt/internal/corext/codemanipulation/StubUtility2.java