A reference to a tag (enum, struct, union, external struct and union)
There is no location if there is no actual definition of the tag
Present when there is an actual definition.
May be in a container, may have attributes
Non-enums contain a field list
The ref uniquely identifies the field amongst all fields.
There's either a size or bit-size attribute
Enforce size or bit-size attribute in field rule
Enums contain a representation type