Stack Trace

Stack Window

The Stack trace window shows the contents of the program stack. It lists all of the functions and their arguments in the sequence they were called. There is also a number representing each call. This number is called the Frame. Each call in the trace exists in a different frame. This starts from frame 0 (the last function called) and grows higher as the function nesting become deeper.

Choose the menu item View->Program Stack, to open the stack trace for the program being debugged.

Figure 9. Stack trace window

A small arrow points to the currently selected frame in the stack trace. By default, this will be frame 0, the last function called. All of the evaluation and inspection of expressions or variables will be with reference to this selected frame. The scope of the variables or expressions being evaluated will be limited to the selected frame only. The same applies for expressions in the watch.

Setting the current frame

Double-clicking on any frame in the stack trace will set that frame as the currently selected frame (the arrow will point to the frame, indicating that it has been selected as the current frame). Alternatively, open the Operation menu by right-clicking on the Stack trace window, and choose the menu item Set frame to set the frame.

Information about the current frame

It is possible to obtain information about the currently selected frame by choosing the menu item Debug->Information->Info Current Frame. A window will open describing the current frame.

Figure 10. Current Frame Information

Updating Stack trace

Choose the menu item Update from the Operation menu (right-click on the Stack trace window) to refresh the Stack trace window.