PTV |
0-2 |
Byte(3) |
Type of record - X'030000'
- If not continued
- X'030100'
- If continued
|
Symbol Type |
3 |
Binary(1) |
Type of the external symbol: - X'00'
- SD, section definition. This will include current OBJ ESD items
of types SD, CM and PC (private code, blank SD name). The "Parent" or "Owning" ID
must be zero.
- X'01'
- ED, element definition.
The "Parent ID" must be nonzero,
and is the SD ID of the section of which this element is a component.
Note: The
class to which this element belongs is specified by the external name
on this record.
If any RLD items refer to this class, an
ED record must be present, even if the class contains no text.
- X'02'
- LD, label definition. The "Parent ID" must be nonzero, and
is the EDID of the element in which the LD item resides.
- X'03'
- PR, part reference.
The "Parent ID" must be nonzero, and
is the EDID of the element in which this PR item resides.
Note: This
supersedes current OBJ PR (pseudo-register definition).
- X'04'
- ER and WX, external reference. (WX is described by the "Binding
Strength" value in the Attributes field below.)
All other types are reserved.
|
ESDID |
4-7 |
Binary(4) |
ESDID of this item. This value must be greater
than zero. ESDIDs in a GOFF file must be numbered sequentially starting
at one, with no gaps. |
Parent or Owning ESDID |
8-11 |
Binary(4) |
ESDID of the object that "defines" or "owns" this
item, if any. (For example, an LD item has its own ESDID, but the
element to which it belongs has the "owning" ESDID.) If there
is no "owning" ESDID, this field contains binary zero. See Table 1 for a summary. |
|
12-15 |
Binary(4) |
Reserved. |
Offset |
16-19 |
Binary(4) |
Offset associated with the ESD item named on this
record. Note: The only ESD types currently having offsets are LD items
(and ED items as currently produced by the Assembler).
|
|
20-23 |
Binary(4) |
Reserved. |
Length |
24-27 |
Binary(4) |
Length of the item named on this record. Note: Length
values apply only to ED and PR items. For SD, LD, and ER items, this
field must be zero. To distinguish a true zero length from a deferred
length, specify -1 if the length specification is deferred. See Deferred element length record.
|
Extended Attribute ESDID |
28-31 |
Binary(4) |
ESDID of the element that contains extended attribute
information. This information is stored in the program object and
may be made available to Language Environment® DLL support
for dynamically resolved symbols. Valid for ED and LD records. |
Extended Attribute Data Offset |
32-35 |
Binary(4) |
Offset (within the element defined by the previous
field) of the extended attribute data defined for this symbol. Valid
for ED and LD records. |
|
36-39 |
Byte(4) |
Reserved. |
Name Space ID |
40 |
Binary(1) |
Identification of the name space to which this
name belongs. - 0
- Reserved to program management binder
- 1
- Normal external names (these can be specified as PDS member and
alias names)
- 2
- Pseudo-Register (PR) names
- 3
- Parts. External data items for which storage is allocated in the
program object and which can have initial text (for example, data
items in C writable static).
All other values are reserved.
|
Fill-Byte Value Presence Field |
41.0 |
Bit(1) |
Indicates the presence of a fill-byte value in
Byte 42. - B'0'
- No fill byte is present.
- B'1'
- A fill byte value is present.
Valid only for ED records.
|
Mangled Flag |
41.1 |
Bit(1) |
Indicates whether this symbol is a C++ mangled
name. - B'0'
- The symbol is not mangled.
- B'1'
- The symbol may be mangled.
|
Renameable Flag |
41.2 |
Bit(1) |
Indicates whether or not the symbol can participate
in Language Environment type
renaming. - B'0'
- The symbol cannot be renamed (same as 'mapped' flag in XOBJ).
- B'1'
- The symbol can be renamed.
|
Removable Class Flag |
41.3 |
Bit(1) |
Indicates that this class may be optionally deleted
from a program object without affecting the executability of the program. - B'0'
- Not removable. This is the default.
- B'1'
- Removable. This attribute applies only to ED ESD items.
|
|
41.4-6 |
Bit(3) |
Reserved. |
|
41.7 |
Bit(1) |
- B'1'
- Reserve 16 bytes at beginning of class. MRG class ED records only.
- B'0'
- No space reserved.
|
Fill Byte Value |
42 |
Byte(1) |
Fill byte value, if bit 41.0 is one.
ED records only. |
|
43 |
Byte(1) |
Reserved. |
Associated data ID |
44-47 |
Binary(4) |
This ID identifies the associated data (the environment
or static area) for this symbol. Valid for LD items only. Supported
only for XPLINK definitions and references. |
Priority |
48-51 |
Binary(4) |
Supported for PR items only. This unsigned field
is used as a sort field when determining the order of PR items. |
|
52-59 |
Byte(8) |
Reserved. Must be binary zero. |
Behavioral Attributes |
60-69 |
Byte(10) |
Behavioral attribute information for the ESD item
named on this record. The format of the behavioral attribute information
is shown in Table 1. |
Name Length |
70-71 |
Binary(2) |
Length of the name of this ESD item. This length
field cannot be zero. |
Name |
72-* |
Byte(n) |
Name of this ESD item. All names (including blank
names) must be at least one character long. Trailing blanks should
be removed. |
Trailer |
|
Byte(m) |
Unused space at the end of a record is reserved
and cannot be used for any other purpose. |