By default all enumerations are stored as a longword (4 bytes), which is equivalent to specifying
the {$Z4}, {$PACKENUM 4} or {$PACKENUM DEFAULT} switches.
This default behavior can be changed by compiler switches, and by the compiler mode.
In the tp compiler mode, or while the {$Z1} or {$PACKENUM 1} switches are in effect, the storage
space used is shown in table (8.1).
Table 8.1: | Enumeration storage for tp mode |
# Of Elements in Enum. | Storage space used |
|
| 0..255 | byte (1 byte) |
256..65535 | word (2 bytes) |
¿ 65535 | longword (4 bytes) |
|
| |
|
When the {$Z2} or {$PACKENUM 2} switches are in effect, the value is stored on 2 bytes (word), if
the enumeration has less or equal then 65535 elements, otherwise, the enumeration value is stored
as a 4 byte value (longword).