Bug 96926 [quick fix] Change method return type quick fix gives invalid proposal for wildcard types
Against I20050527-0010: Code: void a() { ArrayList<? extends Number> b = null; return b.get(0); } Ask for a quick fix on the compile error. Three things happen: 1) BAD: The quick fix is entitled "Change method return type to '? extends Number'". 2) GOOD: The correct return type, Number, is shown originally. 3) BAD: However, the top completion proposal, and the one chosen if the user simply hits return, is "? extends Number", which creates a compile error.
org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/text/correction/ModifierCorrectionSubProcessor.java
}
		for (Iterator iter= proposals.iterator(); iter.hasNext();) {
			Object element= iter.next();
			if (element instanceof ICommandAccess && ADD_SUPPRESSWARNINGS_ID.equals(((ICommandAccess) element).getCommandId())) {
				return; 
			}
		}
		
		ASTNode node= context.getCoveringNode();
		
		ASTNode target= getParentAnnotationHolder(node);
		if (target == null) {
			return;
		}
		proposals.add(getSuppressWarningsProposal(context.getCompilationUnit(), target, warningToken, 1));
	
		if (!(target instanceof BodyDeclaration)) {
			target= getParentAnnotationHolder(target.getParent());
			if (target != null) {
				proposals.add(getSuppressWarningsProposal(context.getCompilationUnit(), target, warningToken, 0));
			}
		}
	}
	
	private static String getFirstFragmentName(List fragments) {
		if (fragments.size() > 0) {
			return ((VariableDeclarationFragment) fragments.get(0)).getName().getIdentifier();
		}
		return new String();
	}