The cross referencing is performed for the following items
- Files
- The files that the current file is included in
(even when included via other files).
- #includes
- Files included in the current file.
- Files included by these files etc.
- Variables
- The location of the definition of external variables.
- The files that have visibility of global variables.
- The files / functions that use the variable.
- Functions
- The file that the function is prototyped in.
- The functions that the function calls.
- The functions that call the function.
- The files and functions that reference the function.
- The variables that are used in the function.
Each of these items is cross referenced in the output.
The cross referencing uses files `cxref.variable', `cxref.function',
`cxref.include' and `cxref.typedef' in the output directory.
These are a complete list of the function and variable usage in the program and
could be used to generate a function call hierarchy or variable usage diagram
for example.
Two cxref passes of each file is needed, the first to build up the cross
referencing files and the second to use them.
(The file names are different if the ``-N'' option is used.)