The varargs methods of the Array unshift() and push() methods can still return longs, which shouldn't be the case after JDK-8143896 as longs are no longer considered JavaScript Numbers. This normally only occurs with optimistic types disabled. var x = [1, 2, 3]; print(x.push() === 3); // prints false instead of true print(x.unshift() === 3); // prints false instead of true