Get a description of the current call stack.
A bit mask of flags affecting generation of the backtrace.
Currently a single flag is defined:
LiveBacktraceFrames. This flag causes the frame objects to track changes (as long as they are in use), and makes eg local variables for functions available for inspection or change.
Note that since these values are "live", they may change or dissapear at any time unless the corresponding thread has been halted or similar.
The description is returned as an array with one entry for each call frame on the stack.
The entries are represented by Pike.BacktraceFrame objects.
The current call frame will be last in the array.
Please note that the frame order may be reversed in a later version of Pike to accommodate for deferred backtraces.
Note that the arguments reported in the backtrace are the current values of the variables, and not the ones that were at call-time. This can be used to hide sensitive information from backtraces (eg passwords).
In old versions of Pike the entries used to be represented by arrays of the following format:
A string with the filename if known, else zero.
An integer containing the linenumber if known, else zero.
The function that was called at this level.
The arguments that the function was called with.
The above format is still supported by eg describe_backtrace().
- See also