4.36. 4.36 Unions

A record definition assigns different offsets to each field in the record according to the size of those fields. This behavior is quite similar to the allocation of memory offsets in a var or static section. HLA provides a second type of structure declaration, the union, that does not assign different addresses to each object; instead, each field in a union declaration has the same offset — zero. The following example demonstrates the syntax for a union declaration:

type
     unionType:
          union
              << fields (syntactically identical to record declarations) >>
          endunion;

You access the fields of a union exactly the same way you access the fields of a record: using dot notation and field names. The following is a concrete example of a union ...

Get Art of Assembly Language, 1st Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.