Bug 102142 [quick fix] Change method signature quick fix renames parameter
In 3.1. Code: public class Foo { Foo(String string) { System.out.println("" + string); } private void bar() { new Foo(3); } } The compile error on new Foo(3) offers a quick fix: "Change constructor Foo(String) to Foo(int)". Selecting it changes not only the type, but the name of the parameter: String string becomes int i. Accepting this default leads to a compile error.
org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/text/correction/ChangeMethodSignatureProposal.java
SimpleName newName= ast.newSimpleName("x"); 
				
				SingleVariableDeclaration decl= (SingleVariableDeclaration) parameters.get(k);
				rewrite.replace(decl.getType(), newType, null);
				rewrite.replace(decl.getName(), newName, null); 
				
				desc.resultingParamName= newName;
				desc.resultingParamType= newType;
				hasCreatedVariables= true;
				k++;
				TagElement tagNode= findParamTag(methodDecl, decl);
				if (tagNode != null) {
					List fragments= tagNode.fragments();
					if (!fragments.isEmpty()) {
						SimpleName arg= ast.newSimpleName("x"); 
						rewrite.replace((ASTNode) fragments.get(0), arg, null);
						desc.resultingTagArg= arg;
					}
				}
			} else if (curr instanceof SwapDescription) {
				SingleVariableDeclaration decl1= (SingleVariableDeclaration) parameters.get(k);
				SingleVariableDeclaration decl2= (SingleVariableDeclaration) parameters.get(((SwapDescription) curr).index);
				rewrite.replace(decl1, rewrite.createCopyTarget(decl2), null);
				rewrite.replace(decl2, rewrite.createCopyTarget(decl1), null);
				usedNames.add(decl1.getName().getIdentifier());
				k++;
				TagElement tagNode1= findParamTag(methodDecl, decl1);
				TagElement tagNode2= findParamTag(methodDecl, decl2);
				if (tagNode1 != null && tagNode2 != null) {
					rewrite.replace(tagNode1, rewrite.createCopyTarget(tagNode2), null);