--- old/src/jdk/nashorn/internal/ir/LiteralNode.java 2016-01-20 14:14:41.987064463 +0100 +++ new/src/jdk/nashorn/internal/ir/LiteralNode.java 2016-01-20 14:14:41.903064464 +0100 @@ -364,8 +364,6 @@ private static Type numberGetType(final Number number) { if (number instanceof Integer) { return Type.INT; - } else if (number instanceof Long) { - return Type.LONG; } else if (number instanceof Double) { return Type.NUMBER; } else { @@ -396,6 +394,7 @@ * @return the new literal node */ public static LiteralNode newInstance(final long token, final int finish, final Number value) { + assert !(value instanceof Long); return new NumberLiteralNode(token, finish, value); } @@ -748,8 +747,6 @@ assert !elementType.isUnknown(); if (elementType.isInteger()) { return presetIntArray(value, postsets); - } else if (elementType.isLong()) { - return presetLongArray(value, postsets); } else if (elementType.isNumeric()) { return presetDoubleArray(value, postsets); } else { @@ -818,8 +815,6 @@ private static ArrayType getArrayType(final Type elementType) { if (elementType.isInteger()) { return Type.INT_ARRAY; - } else if (elementType.isLong()) { - return Type.LONG_ARRAY; } else if (elementType.isNumeric()) { return Type.NUMBER_ARRAY; } else { @@ -854,8 +849,6 @@ private boolean presetsMatchElementType() { if (elementType == Type.INT) { return presets instanceof int[]; - } else if (elementType == Type.LONG) { - return presets instanceof long[]; } else if (elementType == Type.NUMBER) { return presets instanceof double[]; } else {