Bug 85502 [5.0][syntax coloring] Coloring of unboxing/boxing: Missing cases
20050216 The following cases seem to be missed by the boxing/unboxing syntax colorer: (enable compiler warning for (un)boxing to see where boxing occurs) public class A { private void foo1() { int a= 9; if (a == new Integer(9)) { } } private void foo2() { Integer x= 'c'; } private void foo3() { int si= true ? new Integer(0) : new Character('x'); } private void foo4() { Integer x= new Integer(9); x += 9; } private void foo5() { Integer[] a= {1, 2, 3}; int[] b= {a[0]}; } private void foo6() { Integer y= new Integer(9); switch (y) { } } private int foo7() { Integer y= new Integer(9); return y; } private Integer foo8() { int count= 9; return count; } }
org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/SemanticHighlightingReconciler.java
}
		fJobPresenter.setCanceled(progressMonitor.isCanceled());
		if (ast == null || fJobPresenter.isCanceled())
			return;
		ASTNode[] subtrees= getAffectedSubtrees(ast);
		if (subtrees.length == 0)
			return;
		startReconcilingPositions();
		if (!fJobPresenter.isCanceled())
			reconcilePositions(subtrees);
		TextPresentation textPresentation= null;
		if (!fJobPresenter.isCanceled())
			textPresentation= fJobPresenter.createPresentation(fAddedPositions, fRemovedPositions);
		if (!fJobPresenter.isCanceled())
			updatePresentation(textPresentation, fAddedPositions, fRemovedPositions);
		stopReconcilingPositions();
		fJobPresenter= null;
		fJobSemanticHighlightings= null;
		fJobHighlightings= null;
	}
	/**
	 * @param node Root node
	 * @return Array of subtrees that may be affected by past document changes
	 */
	private ASTNode[] getAffectedSubtrees(ASTNode node) {
		
		return new ASTNode[] { node };
	}
	/**
	 * Start reconciling positions.