Next: , Previous: Breakpoints, Up: Debugging


13.4 Debug Mode

There are two additional support functions that allow the user to interrogate where in the execution of a script Octave entered the debug mode and to print the code in the script surrounding the point where Octave entered debug mode.

— Built-in Function: dbwhere ()

In debugging mode, report the current file and line number where execution is stopped.

See also: dbstatus, dbcont, dbstep, dbup.

— Command: dbtype
— Command: dbtype lineno
— Command: dbtype startl:endl
— Command: dbtype startl:end
— Command: dbtype func
— Command: dbtype func lineno
— Command: dbtype func startl:endl
— Command: dbtype func startl:end

Display a script file with line numbers.

When called with no arguments in debugging mode, display the script file currently being debugged. An optional range specification can be used to list only a portion of the file. The special keyword "end" is a valid line number specification for the last line of the file.

When called with the name of a function, list that script file with line numbers.

See also: dbwhere, dbstatus, dbstop.

You may also use isdebugmode to determine whether the debugger is currently active.

— Built-in Function: isdebugmode ()

Return true if in debugging mode, otherwise false.

See also: dbwhere, dbstack, dbstatus.

Debug mode also allows single line stepping through a function using the commands dbstep.

— Command: dbstep
— Command: dbstep n
— Command: dbstep in
— Command: dbstep out
— Command: dbnext ...

In debugging mode, execute the next n lines of code. If n is omitted, execute the next single line of code. If the next line of code is itself defined in terms of an m-file remain in the existing function.

Using dbstep in will cause execution of the next line to step into any m-files defined on the next line. Using dbstep out will cause execution to continue until the current function returns.

dbnext is an alias for dbstep.

See also: dbcont, dbquit.