Common Object File Format (COFF)

Storage classes

The storage class field has one of the values described in ``Storage classes'' These #defines may be found in the header file fstorclass.h.

Storage classes

Mnemonic Value Storage Class
C_EFCN -1 physical end of a function
C_NULL 0 -
C_AUTO 1 automatic variable
C_EXT 2 external symbol
C_STAT 3 static
C_REG 4 register variable
C_EXTDEF 5 external definition
C_LABEL 6 label
C_ULABEL 7 undefined label
C_MOS 8 member of structure
C_ARG 9 function argument
C_STRTAG 10 structure tag
C_MOU 11 member of union
C_UNTAG 12 union tag
C_TPDEF 13 type definition
C_USTATIC 14 uninitialized static
C_ENTAG 15 enumeration tag
C_MOE 16 member of enumeration
C_REGPARM 17 register parameter
C_FIELD 18 bit field
C_BLOCK 100 beginning and end of block
C_FCN 101 beginning and end of function
C_EOS 102 end of structure
C_FILE 103 file name
C_LINE 104 used only by utility programs
C_ALIAS 105 duplicated tag
C_HIDDEN 106 like static, used to avoid name conflicts
C_SHADOW 107 shadow symbol
C_WEAKEXT 108 like C_EXT, but with weak linkage

All of these storage classes except for C_ALIAS and C_HIDDEN are generated by the cc or as commands. The compress utility, cprs(CP), generates the C_ALIAS mnemonic. This utility removes duplicated structure, union, and enumeration definitions and puts alias entries in their places. The storage class C_HIDDEN is not used by any UNIX system tools. Some of these storage classes are used only internally by the C compilation systems. These storage classes are C_EFCN, C_EXTDEF, C_ULABEL, C_USTATIC, and C_LINE.

Next topic: Storage classes for special symbols
Previous topic: Name field

© 2003 Caldera International, Inc. All rights reserved.
SCO OpenServer Release 5.0.7 -- 11 February 2003