So you are saying that the problem is that it will execute with a negative value?
That sounds like what it should do because if the ending index is lower than the starting it should change to for(i = 0; i > array_width; i--)
If your only issue is the loop executing when empty why don't you just but a pre-condition as array.width > 0 ?
Yes, I know by logic on what you put in the parameters, it makes sense. That's why I didn't say it's a bug or anything, just IMO a bit odd behavior as you can't have the loop run 0 times.
What I use now is "repeat for array.width" but I have to have a variable to keep the loopindex in a nested loop. I was hoping by using loopindex("name"), I could make it simpler. Using pre-conditioning sure can do the trick, but that add some complexity, so it will just the same as using repeat.