eld Manual
Table Of Contents
- eld Manual
- Legal Notices
- Contents
- What’s New in This Manual
- Manual Information
- New and Changed Information
- About This Manual
- Notation Conventions
- 1 Introduction to eld
- 2 eld Input and Output
- 3 Binding of References
- Overview
- Presetting Loadfiles
- To Preset or Not to Preset, and Creation of the LIC
- Handling Unresolved References
- Using User Libraries
- Creating Import Libraries
- Ignoring Optional Libraries
- Merging Symbols Found in Input Linkfiles
- Accepting Multiply-Defined Symbols
- Using the -cross_dll_cleanup option
- Specifying Which Symbols to Export, and Creating the Export Digest
- Public Libraries and DLLs
- The Public Library Registry
- 4 Other eld Processing
- Adjusting Loadfiles: The -alf Option
- Additional rules about -alf
- The -set and -change Options
- eld Functionality for 64-Bit
- Checking the C++ Language Dialect
- Renaming Symbols
- Creating Linker-Defined Symbols
- Updating Or Stripping DWARF Symbol Table Information
- Modifying the Data Sections that Contain Stack Unwinding Information
- Creating the MCB
- Processing of Floating Point Versions and Data Models
- Specification of the Main Entry Point
- Specifying Runtime Search Path Information for DLLs
- Merging Source RTDUs
- 5 Summary of Linker Options
- 6 Output Listings and Error Handling
- A TNS/E Native Object Files
- Glossary
- Index

eld Manual—527255-009
6-1
6
Output Listings and Error Handling
This section contains the following topics:
General Information - when and how messages are created.
Error Messages - individual cause, effect and recovery information.
Glossary of Errors - further detail on some of the error message text .
General Information
The linker creates a listing file that is written to the C standard output file. eld does
not override whatever default rules are provided for the standard output file by the C
runtime on each platform. For example, if it is not possible to open the standard output
file, and the default behavior of the C runtime is to write out a message on standard
error in such a situation, then that is what will happen. Also, note that when you put
standard output into a file on Guardian, it gets appended to what was in that file before,
rather than overwriting the file (this is "normal" Guardian behavior; for example, FUP
does the same thing).
Messages that appear in the output listing fall into the following four severity levels:
On Guardian eld's return code is equal to the highest severity level that occurred
during the link, i.e., 0, 1, 2, or 3. That is done because this is a Guardian standard. On
the other hand, on the PC and OSS, users are accustomed to just checking whether
the value is 0 or 1, and considering 1 to be an error, and not caring about warnings.
So, on the PC and OSS, eld calls exit with a parameter value of 0 if the highest
severity was 0 or 1, and with a parameter value of 1 if the highest severity level was 2
or 3.
Table 6-1. Completion Codes - The Severity Levels of Messages
Severity
Level
Type of
Message Meaning
3 fatal error The linker cannot do what was requested of it and the linker
immediately stops. This includes all cases of command
stream syntax errors, I/O errors, and memory allocation
errors.
2 error The linker cannot do what was requested of it and will
eventually stop, but may continue for the purpose of
detecting additional errors before stopping.
1 warning The linker can do what was requested of it, but the linker isn’t
sure that this is what the user really wanted.
0 information This is not indicative of a problem.










