The Function Summary lists the name and classification (BLOCK DATA, FUNCTION, PROGRAM, or SUBROUTINE) for each routine defined in your application, along with the library routines called by the project (excluding intrinsics). The number of calls are also displayed. The Call Sites column refers to the routines that call that routine.
Clicking on the routine name takes you to the routine's interface and various local reports, including complete cross references.
The Inactive Function Report lists the inactive functions and subroutines in the project, i.e., routines that cannot be reached from the beginning of the call tree, typically the main routine.
Given the call tree starts at the main, functions in this report are unnecessary and may be candidates for removal.
Dead branches occur when a call is removed to a (parent) routine, normally higher up in the application call tree, thus eliminating all nested calls made by that parent and its children. This is often seen in old FORTRAN code when a call is commented out during maintenance. Note, not all routines in the dead branch call tree are inactive routines, since some nested routines may be reached by other calling sequences.
The inactive FUNCTION report lists all routines not called directly or indirectly from the tree beginning (normally the main), thus giving you a list of all unnecessary functions in your source code.
Obviously, if you are processing a library, this information will have little meaning, since libraries don't have a main, and most have various entry points, thus voiding the analysis.
The application's Call Tree normally starts with the program main, but the TREE option may be used to select an alternative start. Note, when starting with something other than the main, the inactive function (and dead branch call tree) information will be relative to the routine indicated with the TREE option!
There are three call tree forms depending on the option chosen. GREPT=T option will produce the full call tree. GREPT=t will produce abbreviated call trees of all called routines, and GREPT=x will produce abbreviated call trees excluding library calls. Only one form may be selected during a run. Abbreviated call trees do not display duplicate branches when previously displayed as part of a prior call (an ellipsis, "...", is used to indicate the tree continues as previously displayed). A note regarding side effects follows the name if any I/O is performed, or any common members are set in the function. Nested function calls are indented in the call tree, with calls at the same level being displayed,in the order first called in the parent function.
To generate call trees for a FORTRAN library, use full call tree form without any Tree option; then multiple call trees will be generated for various routines (in the order processed).
The call tree is displayed using standard ASCII characters to form the tree. A '+' indicates a call from the parent function with other calls to follow (i.e., a side tee), a '|' is used to indicate further calls from the parent function, and a '-' is used to indicate the last call from the parent function (i.e., a right corner).
Clicking on the routine name takes you to the routine's interface and various local reports, including complete cross references.