Array length property wrap-around [nitpicking]

# David-Sarah Hopwood (17 years ago)

I wrote:

ToArrayLength(V)

  1. Call ToNumber(V).
  2. If Result(1) is not a nonnegative integer less than or equal to ArrayLengthLimit, then throw a RangeError.

"... then throw a RangeError exception."

[...]

The resulting 'concat', 'push', and 'unshift' methods can throw a RangeError because the length of the array they create would be greater than ArrayLengthLimit; the others (excluding 'splice') can only throw a RangeError when they operate on an object that is not a native array and has an invalid length property.

... will only throw a RangeError from ToArrayLength ... (It is possible that something else they call may throw a RangeError.)