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/SemanticHighlightings.java
return location == ArrayAccess.ARRAY_PROPERTY;
				case ASTNode.METHOD_INVOCATION:
					return location == MethodInvocation.NAME_PROPERTY;
				case ASTNode.CLASS_INSTANCE_CREATION:
					return location == ClassInstanceCreation.NAME_PROPERTY;
				case ASTNode.SUPER_METHOD_INVOCATION:
					return location == SuperMethodInvocation.NAME_PROPERTY;
				
				case ASTNode.ASSIGNMENT:
					return location == Assignment.LEFT_HAND_SIDE_PROPERTY;
			}
			return false;
		}
		/**
		 * Returns <code>true</code> if <code>rhs</code> is auto boxed or
		 * auto unboxed when assigned to <code>lhs</code>.
		 *
		 * @param lhs the target type
		 * @param rhs the origin type
		 * @return <code>true</code> if an assignment from <code>rhs</code>
		 *         to <code>lhs</code> involves auto(un)boxing
		 */
		private boolean isAutoboxing(ITypeBinding lhs, ITypeBinding rhs) {
			return lhs != null && rhs != null && lhs.isPrimitive() != rhs.isPrimitive() && rhs.isAssignmentCompatible(lhs);
		}
	}
	/**
	 * Semantic highlighting for method declarations.
	 */
	private static final class MethodDeclarationHighlighting extends SemanticHighlighting {