if (bindingToCast.isPrimitive()) {
if (bindingToCast.isPrimitive() && !castTarget.equals(bindingToCast.getName())) {
	private static boolean canCast(String castTarget, ITypeBinding bindingToCast) {		int arrStart= castTarget.indexOf('[');		if (arrStart != -1) {			if (!bindingToCast.isArray()) {				return "java.lang.Object".equals(bindingToCast.getQualifiedName()); //$NON-NLS-1$			}			castTarget= castTarget.substring(0, arrStart);			bindingToCast= bindingToCast.getElementType();			if (bindingToCast.isPrimitive()) {				return false; // can't cast arrays of primitive types into each other			}		}				Code targetCode= PrimitiveType.toCode(castTarget);		if (bindingToCast.isPrimitive()) {			Code castCode= PrimitiveType.toCode(bindingToCast.getName());			if (castCode == targetCode) {				return true;			}			return (targetCode != null && targetCode != PrimitiveType.BOOLEAN && castCode != PrimitiveType.BOOLEAN);		} else {			return targetCode == null;		}	}