M0117Loop index runs past the end of the array
Reported by the compiler as an error or warning.
mettle explain M0117
The loop's upper bound and the array's length are both known at compile time, and the bound is the larger. The final iteration reads or writes past the end.
Example
var a: int64[8];
for i in 0..9 { a[i] = i; } // M0117: valid indexes are 0..7
Fix: match the bound to the length. Indexes are 0-based, so an array of 8 runs 0..7 and an off-by-one here is the usual cause.