Bug 252487 [DataBinding] use Double.isNaN(d) instead of d!=d to check for NaN
There are two warnings in StringToNumberParser related to the fact that we use "doubleValue == doubleValue" to determine whether the value is NaN (suprisingly, NaN is never == NaN, even if it is the same variable). We should be using Double.isNaN(doubleValue) instead.
bundles/org.eclipse.core.databinding/src/org/eclipse/core/internal/databinding/conversion/StringToNumberParser.java
* the range of a integer.
	 *
	 * @param number
	 * @return <code>true</code> if a valid integer
	 * @throws IllegalArgumentException
	 *             if the number type is unsupported
	 */
	public static boolean inIntegerRange(Number number) {
		return checkInteger(number, 31);
	}
	/**
	 * Validates the range of the provided <code>number</code>.
	 *
	 * @param number
	 * @param bitLength number of bits allowed to be in range
	 * @return <code>true</code> if in range
	 */
	private static boolean checkInteger(Number number, int bitLength) {
		BigInteger bigInteger = null;
		if (number instanceof Integer || number instanceof Long) {
			bigInteger = BigInteger.valueOf(number.longValue());
		} else if (number instanceof Float || number instanceof Double) {
			double doubleValue = number.doubleValue();
			/*
			 * doubleValue == doubleValue is used to check for NaN because NaN !=
			 * NaN. The only way to check for NaN is to compare that the value
			 * is equal to itself.
			 */
			if (doubleValue == doubleValue
					&& doubleValue != Double.NEGATIVE_INFINITY