Stepping Over Code

The Step Over button (or pressing F10) allows you to step on to the next DAG compute method, except that stepping over a subroutine call runs the call at full speed and halts execution of the stepped thread at the next function or statement.

 

Stepping causes a break to occur at:

1.  The next top-level statement executed on the same thread

2.  The next statement in an IfThen, IfElse, WhileLoop, DoLoop, Case, or Execute clause

 

Note that b) means that stepping source code written as:

1: IfElse(A > B,

2: Execute(

3: X = Y;

4: );

5: { else } Execute(

6: Z = Y;

7: ));

 

(which is not the normal style of a VTS programmer) would result in a step from line 1 to line 2 to line 3, or from line 1 to line 5 to line 6. The same code in the normal style of a VTS programmer:

1: IfElse(A > B, Execute(

2: X = Y;

3: );

4: { else } Execute(

5: Z = Y;

6: ));

 

The preceding example would result in a step from line 1 to line 1 to line 2, or from line 1 to line 4 to line 5. On line 1, the first step stops on the execute, hence the apparent non-movement of the source line when stepping. In such cases, the Breakpoint tab of the Action window will show you the parameter of the statement on which you are stopped.