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

Output Listings and Error Handling
eld Manual—527255-009
6-107
Error Messages
option does this if you specify the -update_code option. But you specified the -
update_code option without the -alf option.
Effect. Fatal error (eld immediately stops without creating an output file).
Recovery. If your intention is to run the -alf option on the millicode DLL then you
should have specified the -update_code option. In any other case, you should not
specify the -update_code option.
Cause. You gave the -alf option, and the file that you gave with it was a program.
Usually, the -alf option only updates fixups within the data segment of a program or
DLL, because there shouldn’t be any in the code segment. However, the millicode DLL
within system library is a special case that has fixups to be done in the code segment.
The -alf option does this if you specify the -update_code option. But, since it is only
intended to be used in this special case, it is considered an error if you specify the -
update_code option and the file given to the -alf option was a program rather than a
DLL.
Effect. Fatal error (eld immediately stops without creating an output file).
Recovery. If your intention is to run the -alf option on the millicode DLL then you
should have correctly specified the name of the millicode DLL. In any other case, you
should not specify the -update_code option
Cause. Each of the two files mentioned in the message defined symbols items of the
same name, as shown in the message. However, they were different types of
symbols, as shown in the message, and that is not allowed. For instance, the
message may say that one of the symbols was “code”, meaning a procedure, whereas
the other symbol was “data”.
Effect. Fatal error (eld immediately stops without creating an output file).
Recovery. Did you really intend to define symbols with the same name in each of
these two files, and have both definitions visible across separate compilations? If not,
change the name of one of them, or change the declaration of one of them so that it is
only visible within its own compilation. You cannot have a procedure and a data item
of the same name.
1591 The -update_code option is only allowed when rebasing a
DLL.
1595 Illegal duplicate definition of <symbol name>: the
definition in <filename> is <this type of symbol> and the
definition in <filename> is <this type of symbol>.
1596 Illegal duplicate definition of the procedure <symbol
name> in <filename> and <filename>.










