LIST(1) SysV LIST(1)
NAME
list - produce C source listing from a common object file
SYNOPSIS
list [ -V ] [-h] [ -F function ] source-file . . . [ object-file ]
DESCRIPTION
list produces a C source listing with line number information attached.
If multiple C source files were used to create the object file, list
accepts multiple file names. 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, is used.
Line numbers are printed 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 again for each function. Line
number 1 is always the line containing the left brace ({) that begins the
function body. Line numbers are also supplied for inner block
redeclarations of local variables so that they can be distinguished by
the symbolic debugger.
OPTIONS
-V Prints, on standard error, the version number of the list
command executing.
-h Suppresses heading output.
-Ffunction
Lists only the named function. The -F option can be specified
multiple times on the command line.
CAVEATS
Object files given to list must have been compiled with the -g option of
cc(1).
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.
DIAGNOSTICS
list produces the error message "list: name: cannot open" if name cannot
be read. If the source file names do not end in .c , the message is
"list: name: invalid C source name". An invalid object file causes 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
is printed: "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.
SEE ALSO
cc(1), ld(1).