|
VMS Help ANALYZE, /OBJECT, Description *Conan The Librarian |
The ANALYZE/OBJECT command describes the contents of one or more
object modules contained in one or more files. It also performs
a partial error analysis. This analysis determines whether all
records in an object module conform in content, format, and
sequence to the specifications of the Alpha or VAX object language.
The ANALYZE/OBJECT command automatically distinguishes Alpha
objects from VAX objects by examining the format of the extended
object modules header (EOMH).
ANALYZE/OBJECT is intended primarily for programmers of compilers,
debuggers, or other software involving the operating system's
object modules. It checks that the object language records
generated by the object modules are acceptable to the Linker
utility, and it identifies certain errors in the file. It also
provides a description of the records in the object file or
object module library. For more information on the linker and on
the Alpha and VAX object languages, refer to the OpenVMS Linker
Utility Manual.
The ANALYZE/OBJECT command analyzes the object modules in order,
record by record, from the first to the last record in the object
module. Fields in each record are analyzed in order from the
first to the last field in the record. After the object module
is analyzed, you should compare the content and format of each
type of record to the required content and format of that record
as described by the OpenVMS Alpha or OpenVMS VAX object language.
This comparison is particularly important if the analysis output
contains a diagnostic message.
Linking an object module differs from analyzing an object module.
Object language commands are not executed in an analysis, but
they are executed in a linking operation. As a result, even if
the analysis is error free, the linking operation may not be. In
particular, the analysis does not check the following:
o That data arguments in TIR commands are in the correct format.
o That "Store Data" TIR commands are storing within legal
address limits.
Therefore, as a final check, you should still link an object
module whose analysis is error free.
If an error is found, however, the first error of the worst
severity that is discovered is returned. For example, if a
warning (A) and two errors (B and C) are signaled, then the first
error (B) is returned as the image exit status, which is placed
in the DCL symbol $STATUS at image exit.
ANALYZE/OBJECT uses positional qualifiers; that is, qualifiers
whose function depends on their position in the command line.
When a positional qualifier precedes all of the input files in
a command line, it affects all input files. For example, the
following command line requests that the analysis include the
global symbol directory records in files A, B, and C:
$ ANALYZE/OBJECT/GSD A,B,C
Conversely, when a positional qualifier is associated with only
one file in the parameter list, only that file is affected. For
example, the following command line requests that the analysis
include the global symbol directory records in file B only:
$ ANALYZE/OBJECT A,B/GSD,C
Typically, all records in an object module are analyzed. However,
when the /DBG, /EOM, /GSD, /LNK, /MHD, /TBT, or /TIR qualifier is
specified, only the record types indicated by the qualifiers are
analyzed. All other record types are ignored.
By default, the analysis includes all record types unless
you explicitly request a limited analysis using appropriate
qualifiers.
Note
End-of-module (EOM) records and module header (MHD) records
are always analyzed, no matter which qualifiers you specify.
|
|