RUN UNTIL

Execute the program until a specific location.

Syntax

RUN UNTIL {expression | BLOCKEND | PROCEND | CALLS}

Parameters

expression

One of the following:

Line number of current module; for example, @LINE 24

module\@LINE num; for example, CRM_CPP\@LINE 4

An expression, such as an address or function

BLOCKEND

The execution of the program continues up to the end of the current block. The following restrictions apply to BLOCKEND:

RUN UNTIL BLOCKEND will not run as expected if an exception occurs during the execution of the corresponding block and no exception handler is available in this block.

The option BLOCKEND is not permitted in the assembler mode.

If no debug information is available, an error message is issued.

RUN UNTIL BLOCKEND cannot work if the function uses non-local jumps in the corresponding code part, as in the function longjmp() in the programming language C.

The block must contain at least one declaration of a local variable, otherwise the end of the block cannot be found.

PROCEND

The execution of the program continues up to the end of the function. The option PROCEND is not permitted in the assembler mode. If no debug information is available, an error message is issued. RUN UNTIL PROCEND cannot work if the function uses non-local jumps in the corresponding code part, as in the function longjmp() in the programming language C.

CALLS

Halts execution after returning from the current procedure. This also applies to the user's assembler subroutines which effect the execution of the program in a similar way.

The RUN UNTIL CALLS command is not available if the language has been switched to assembler mode. The debugger will issue the error message:

RUN UNTIL CALLER not allowed

Description

The RUN UNTIL command runs the program until a specified location.

The program is executed up to a code or data breakpoint, or until the program reaches the location denoted by the command parameters.

Example

RUN UNTIL PRINT\@LINE 10
RUN UNTIL callback
RUN UNTIL PROCEND

See Also


For more complete information about compiler optimizations, see our Optimization Notice.