watch
The watch command sets a watchpoint for
an expression.
Syntax
watch expression [if boolean-expression] - expression is a combination of variables, constants and operators.
 - boolean-expression is an optional boolean expression.
 
Usage
The watch command
stops the program execution when the value of the expression  changes.
If boolean-expression is
provided, the watch command stops  the execution
of the program if the expression value has changed and the  boolean-expression evaluates
to true.
The watchpoint cannot be set if the program is not in the context where expression can be evaluated. Before using a watchpoint, you typically set a breakpoint in the function where the expression makes sense, then you run the program, and then you set the watchpoint. This example illustrates this procedure.
Example
MAIN
   DEFINE i INTEGER
   LET i = 1 
   DISPLAY i
   LET i = 2 
   DISPLAY i
   LET i = 3 
   DISPLAY i
 END MAIN
(fgldb) break main
breakpoint 1 at 0x00000000: file test.4gl, line 4
(fgldb) run
Breakpoint 1, main() at test.4gl:4
4      LET i = 1
(fgldb) watch i if i >= 3
Watchpoint 1:  i
(fgldb) continue
1
2
Watchpoint 1:  i
Old value = 2
New value = 3
main() at t.4gl:9
9         DISPLAY i
(fgldb)