A fixed-length opaque data type
When you specify the actual size for INTERNALLENGTH, you create a fixed-length opaque data type. The size of a fixed-length opaque data type must match the value that the C-language sizeof() directive returns for the internal structure. The maximum internal length for a fixed-length opaque type is 32760 bytes.
On most compilers, the sizeof() directive rounds up to the nearest 4-byte size to ensure that pointer match on arrays of structures works correctly. However, you do not need to round up for the size of a fixed-length opaque data type. Instead you can specify alignment for the opaque data type with the ALIGNMENT modifier. For more information, see Memory alignment.