Will this still work if we do something like:

for (var i = 0; i < 10; i += 2) {
  fn(i, i + 1)
}

Or does that count as re-evaluation and is not possible?