Bug 15407 quick fix: removes too many temps (multi declaration case)
20020502+ package p; class Test{ int i(){ int i= 0, jjj= 1; return i; } } jjj is not used to qf offers to remove it. i say 'fine' but it leaves me in a state with compiler errors: class Test{ int i(){ return i; } }
org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/text/correction/LocalCorrectionsSubProcessor.java
res[0]= null;
				
				decl.accept(new GenericVisitor() {
					public boolean visit(ReturnStatement node) {
						if (res[0] == null) {
							Expression expr= node.getExpression();
							if (expr != null) {
								ITypeBinding binding= expr.resolveTypeBinding();
								if (binding != null) {
									res[0]= binding;
								} else {
									res[0]= node.getAST().resolveWellKnownType("java.lang.Object"); 
								}
							} else {
								res[0]= node.getAST().resolveWellKnownType("void"); 
							}
						}
						return false;
					}
				});
				ITypeBinding type= res[0];
				if (type == null) {
					type= decl.getAST().resolveWellKnownType("void"); 
				} 
				
				String str= type.getName() + " "; 
				int pos= ((MethodDeclaration) decl).getName().getStartPosition();
				
				String label= CorrectionMessages.getFormattedString("LocalCorrectionsSubProcessor.missingreturntype.description", type.getName()); 
				InsertCorrectionProposal proposal= new InsertCorrectionProposal(label, cu, pos, str, 1);