Bug 106637 [quick fix] "Change method..." QuickFix loses final keyword.
If the "Change method..." QuickFix is applied, then the final keyword is lost. -------------------------- Bug.java ------------------ import java.util.*; class Bug { void foo(final HashMap map){} {foo(Collections.EMPTY_MAP);} }
org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/text/correction/ChangeMethodSignatureProposal.java
rewrite.replace(tagNode2, rewrite.createCopyTarget(tagNode1), null);
				}
			}
		}
		if (!hasCreatedVariables) {
			return;
		}
		if (methodDecl.getBody() != null) {
			
			CompilationUnit root= (CompilationUnit) methodDecl.getRoot();
			IBinding[] bindings= (new ScopeAnalyzer(root)).getDeclarationsAfter(methodDecl.getBody().getStartPosition(), ScopeAnalyzer.VARIABLES);
			for (int i= 0; i < bindings.length; i++) {
				usedNames.add(bindings[i].getName());
			}
		}
		fixupNames(rewrite, usedNames, methodDecl, isInDifferentCU);
	}
	private void fixupNames(ASTRewrite rewrite, ArrayList usedNames, MethodDeclaration methodDecl, boolean isInDifferentCU) {
		AST ast= rewrite.getAST();
		
		for (int i= 0; i < fParameterChanges.length; i++) {
			ChangeDescription curr= fParameterChanges[i];
			if (curr instanceof ModifyDescription) {
				ModifyDescription desc= (ModifyDescription) curr;
				SingleVariableDeclaration var= desc.resultingNode;
				String suggestedName= desc.name;
				String typeKey= getParamTypeGroupId(i);
				String nameKey= getParamNameGroupId(i);
				
				String favourite= null;