Enum ABI
Payload enums begin with a u32 tag and declaration-order discriminant.
DByte 12.0 · Reference
Contract§
Payload offset is align_up(4, maximum payload alignment).
Mechanics§
Tag offset is zero and tag width is u32. Payload offset is align_up(4, maximum payload alignment), final alignment is max(4, maximum payload alignment), and final size includes aggregate tail padding.
Validation and failure§
Inactive payload bytes are unspecified; programs cannot depend on zeroed padding or niche layout. C ABI use by value is unsupported.
Evidence and boundary§
Construction/match tests and raw layout snapshots cover zero, single and multiple-payload variants plus invalid tags.