If you are not inside any loop, then go to next loop if one exists. If no such loop exists, do the same as a single normal step would.
Otherwise, go to the END_WHILE of the loop that you are currently in. And then go one step beyond it (so that it is either the start of the next iteration, or at the loop end)
When using this code: http://codereview.stackexchange.com/q/26648/31562 and pressing F8 (Step Continue) the program can hang, or it can also stop the loop at the wrong place.
The intended behavior, I believe, is:
END_WHILE
of the loop that you are currently in. And then go one step beyond it (so that it is either the start of the next iteration, or at the loop end)