list(1) CLIX list(1)
NAME
list - Produces C source listing from a common object file
SYNOPSIS
list [-V] [-h] [-F function] source-file ... [object-file]
FLAGS
-V Display, on stderr, the version number of the list command
executing.
-h Suppress heading output.
-F function List only the named function. The -F flag may be specified
multiple times on the command line. Function names must be
prefixed with an underscore (_) to match how they appear in
the object file.
DESCRIPTION
The list command produces a C source listing with line number information
attached. If multiple C source files were used to create the object file,
list will accept multiple filenames. The object file is taken to be the
last non-C source file argument. If no object file is specified, the
default object file, a.out will be used.
Line numbers will be displayed for each line marked as breakpoint inserted
by the compiler (generally, each executable C statement that begins a new
line of source). Line numbering begins anew for each function. Line
number 1 is always the line containing the left curly brace ({) that
begins the function body. Line numbers will also be supplied for inner
block redeclarations of local variables so that they can be distinguished
by the symbolic debugger.
NOTES
Object files given to list must have been compiled with the -g flag of cc.
Since list does not use the C preprocessor, it may be unable to recognize
function definitions whose syntax has been distorted by the use of C
preprocessor macro substitutions.
EXAMPLES
Given an executable, prog, and its source file, prog.c, this example lists
the line numbers for the functions main and time (which are contained in
prog.c).
list -F_main -F_time prog prog.c
2/94 - Intergraph Corporation 1
list(1) CLIX list(1)
DIAGNOSTICS
The list command will produce the error message ``list: name: cannot
open'' if name cannot be read.
If the source filenames do not end in .c, the message is ``list: name:
invalid C source name''.
An invalid object file will cause the message ``list: name: bad magic''
to be produced.
If some or all of the symbolic debugging information is missing, one of
the following messages will be displayed: ``list: name: symbols have been
stripped, cannot proceed'', ``list: name: cannot read line numbers'', and
``list: name: not in symbol table''.
The following messages are produced when list has become confused by
#ifdef's in the source file: ``list: name: cannot find function in symbol
table'', ``list: name: out of sync: too many }'', and ``list: name:
unexpected end-of-file''.
The error message ``list: name: missing or inappropriate line numbers''
means that either symbol debugging information is missing, or list has
been confused by C preprocessor statements.
RELATED INFORMATION
Commands: as(1), cc(1), ld(1)
2 Intergraph Corporation - 2/94