Bug 99944 Quick Fix offers to change type to List<> [quick fix][5.0]
I20050610-1757 (3.1RC2) import java.util.List; class Try { void m(List<? extends Number> arg) { Lsit raw= arg; } } The first quick fix offers to change 'Lsit' to 'List<>'. The problem is that arg is a capture type and the quick fix does not seem to use the import structure to get a valid type from the capture.
org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/text/correction/UnresolvedElementsSubProcessor.java
addSimilarTypeProposals(kind, cu, node, 3, proposals);
		
		addNewTypeProposals(cu, node, kind, 0, proposals);
	}
	private static void addSimilarTypeProposals(int kind, ICompilationUnit cu, Name node, int relevance, Collection proposals) throws CoreException {
		SimilarElement[] elements= SimilarElementsRequestor.findSimilarElement(cu, node, kind);
		
		String resolvedTypeName= null;
		ITypeBinding binding= ASTResolving.guessBindingForTypeReference(node);
		if (binding != null) {
			if (binding.isArray()) {
				binding= binding.getElementType();
			}
			resolvedTypeName= binding.getQualifiedName();
			proposals.add(createTypeRefChangeProposal(cu, resolvedTypeName, node, relevance + 2));
		}
		
		for (int i= 0; i < elements.length; i++) {
			SimilarElement elem= elements[i];
			if ((elem.getKind() & SimilarElementsRequestor.ALL_TYPES) != 0) {
				String fullName= elem.getName();
				if (!fullName.equals(resolvedTypeName)) {
					proposals.add(createTypeRefChangeProposal(cu, fullName, node, relevance));
				}
			}
		}
	}
	private static CUCorrectionProposal createTypeRefChangeProposal(ICompilationUnit cu, String fullName, Name node, int relevance) throws CoreException {
		ImportRewrite importRewrite= new ImportRewrite(cu);
		importRewrite.setFindAmbiguosImports(true);