Bug 86842 [quick assist] Intention "Split variable declaration" loses "final"
Example: final FcFile file = lockNextFile(); Invoke the intention on variable 'file' and you get: FcFile file; file = lockNextFile(); instead of the expected: final FcFile file; file = lockNextFile();
org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/text/correction/QuickAssistProcessor.java
ConvertForLoopProposal convertForLoopProposal= new ConvertForLoopProposal(
				CorrectionMessages.QuickAssistProcessor_forLoop_description,
				context.getCompilationUnit(),
				forStatement, 1,
				JavaPluginImages.get(JavaPluginImages.IMG_CORRECTION_CHANGE));
		if (!convertForLoopProposal.satisfiesPreconditions())
		    return false;
		resultingCollections.add(convertForLoopProposal);
		return true;
	}
	private static ForStatement getEnclosingForStatementHeader(ASTNode node) {
		if (node instanceof ForStatement)
			return (ForStatement) node;
		while (node != null) {
			ASTNode parent= node.getParent();
			if (parent instanceof ForStatement) {
				StructuralPropertyDescriptor locationInParent= node.getLocationInParent();
				if (locationInParent == ForStatement.EXPRESSION_PROPERTY
						|| locationInParent == ForStatement.INITIALIZERS_PROPERTY
						|| locationInParent == ForStatement.UPDATERS_PROPERTY)
					return (ForStatement) parent;
				else
					return null;
			}
			node= parent;
		}
		return null;
	}
}