1 byte 2 bytes ÚÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂ--- ³ 8C ³ Record ³ ³ ³ Length ³ ÀÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁ--- 1 byte <string> 1 or 2 1 byte --ÂÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄ¿ ³String ³External ³Type ³Chk sum³ ³ Length³ Name string ³ Index ³ or 0 ³ --ÁÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÙ <-------- repeated --------->
This record provides a list of unresolved references, identified by name and with optional associated type information. The external names are ordered by occurrence jointly with the COMDEF records and referenced by an index in other records (FIXUPPs); the name may not be null. Indices start from one.
String Length is a 1-byte field containing the length of the name field that follows it. The length of the name is restricted to 255 bytes.
The Type Index is encoded as an index field and contains debug information.
No type checking is performed by the linker.
Notes:
The linker imposes a limit of 1023 external names.
Any EXTDEF records in an object module must appear before the FIXUPP records that reference them.
Resolution of an external reference is by name match (case sensitive) and symbol type match. The search first looks for a matching name, in the sequence:
All external references must be resolved at link time (using the above search order). Even though the linker produces an executable file for and unsuccessful link session, an error bit is set in the header which prevents the loader from running the executable.