Hello Charles,
That is kind of how i fixed it here. No problems here anymore.
Yes, there is a performance hit, but it is barely noticeable.
Besides, you still have the control and it can be optimized by still
supporting the explicit - operator at compilation time, or ommitting the
generation of this code for the for/next blocks that do not have a STEP
parameter.
Thoughts: I personally think it is better to define the STEP at runtime
because if a - operator is provided with a variable, and the variable is
a negative value... the conditions for the end of the loop will never be met.