diff --git a/library/src/scala/Array.scala b/library/src/scala/Array.scala index 461abdef5803..8cefaf7afeb1 100644 --- a/library/src/scala/Array.scala +++ b/library/src/scala/Array.scala @@ -518,11 +518,10 @@ object Array { var n = 0 var i = start - while (if (step < 0) end < i else i < end) { + while n < array.length do array(n) = i i += step n += 1 - } array } diff --git a/tests/run/i24877.scala b/tests/run/i24877.scala new file mode 100644 index 000000000000..62bcb64acdc2 --- /dev/null +++ b/tests/run/i24877.scala @@ -0,0 +1,6 @@ +// scalajs: --skip + +@main def Test = + val res = Array.range(2, 5, Int.MaxValue) + assert(res.length == 1, s"array length was ${res.length}") + assert(res.head == 2, s"array(0) was ${res.head}")