MX
Causes the debugger to be entered immediately on returning from the current module to the calling module; in other words, it steps out of the current module. Until then, single-stepping is disabled, but any other debugger entry conditions are obeyed.
The call may be an explicit CALL statement, a GOSUB statement or an external user function.
Syntax
MX{O}
Operation
The MX command is valid only within an external code module or function; otherwise it returns a Command? response.
The debugger is entered with a Return To Module reason.
Only one MX or MO command can be active at any one time in a single context. If the debugger is entered in the meantime (for example, because of a break) then any subsequent MX and MO command returns a Command? response.
MXO turns off MX stepping out (and MO stepping over) operations.
Example
:debug m.mainDEBUG Cmd/Stmt: M.MAIN 1 *E1*V1* Execution Count: M.MAIN 3 3 > CALL M.SUB1 *mxIn M.SUB1 In M.SUB2 In M.SUB3 In M.SUB4 In M.SUB4-LOCAL DEBUG Cmd/Stmt: M.SUB4 26, [11] 26 [11] > * * Return To Module: M.MAIN 4 4 > CRT "In M.MAIN" *W1 rem TEST PROGRAM. 2 DEFFUN M.FUNC(A) 3 CALL M.SUB1 4 > CRT "In M.MAIN" *