Bug 23528 quick fix: adds bogus whitespaces on 'add throws declaration'
class A{ void a() throws Exception{ } void f(){ a(); } } qf the call to a() 'add throws declaration' you will get 'void f() throws Exception{' i have to go and fix it every time it used to work :(
org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/text/correction/LocalCorrectionsSubProcessor.java
proposals.add(proposal);
	}
	
	/**
	 * A static field or method is accessed using a non-static reference. E.g.
     * <pre>
     * File f = new File();
     * f.pathSeparator;
     * </pre>
     * This correction changes <code>f</code> above to <code>File</code>.
     * 
	 * @param problemPos
	 * @param proposals
	 */
	public static void addAccessToStaticProposals(ProblemPosition problemPos, List proposals) throws CoreException {
        ICompilationUnit cu= problemPos.getCompilationUnit();
        
        CompilationUnit astRoot= AST.parseCompilationUnit(cu, true);
        ASTNode selectedNode= ASTResolving.findSelectedNode(astRoot, problemPos.getOffset(), problemPos.getLength());
        if (selectedNode != null) {
        	Expression qualifier= getQualifier(selectedNode);
            if (qualifier != null) {                
                ITypeBinding type= qualifier.resolveTypeBinding();
                
                String label= CorrectionMessages.getString("LocalCorrectionsSubProcessor.changeaccesstostatic.description");
                ReplaceCorrectionProposal proposal= new ReplaceCorrectionProposal(label, cu, qualifier.getStartPosition(), qualifier.getLength(), type.getName(), 0);
                
                addImportToProposal(cu, type, proposal);
                
                proposals.add(proposal);