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
newNode.setType(imports.addImport(desc.type, ast));
				newNode.setName(ast.newSimpleName("x")); 
				
				desc.resultingParamName= newNode.getName();
				desc.resultingParamType= newNode.getType();
				hasCreatedVariables= true;
				listRewrite.insertAt(newNode, i, null);
				Javadoc javadoc= methodDecl.getJavadoc();
				if (javadoc != null) {
					TagElement newTagElement= ast.newTagElement();
					newTagElement.setTagName(TagElement.TAG_PARAM);
					SimpleName arg= ast.newSimpleName("x"); 
					newTagElement.fragments().add(arg);
					insertTabStop(rewrite, newTagElement.fragments(), "param_tagcomment" + i); 
					insertParamTag(rewrite.getListRewrite(javadoc, Javadoc.TAGS_PROPERTY), parameters, k, newTagElement);
					desc.resultingTagArg= arg; 
				} else {
					desc.resultingTagArg= null;
				}
			} else if (curr instanceof RemoveDescription) {
				SingleVariableDeclaration decl= (SingleVariableDeclaration) parameters.get(k);
				listRewrite.remove(decl, null);
				k++;
				TagElement tagNode= findParamTag(methodDecl, decl);
				if (tagNode != null) {
					rewrite.remove(tagNode, null);
				}
			} else if (curr instanceof EditDescription) {
				EditDescription desc= (EditDescription) curr;
				Type newType= imports.addImport(desc.type, ast);