Memory alignment
If you do not specify the internal structure of your opaque data type in BladeSmith, you must choose the memory alignment of the first member; your compiler aligns the other members with this value. Choose an alignment value that corresponds to the greatest alignment requirement in the data structure.
The default alignment is 4. If you do not know the alignment of the member with the greatest alignment, choose 8.