Memory error classification, operation, syndrome, 64-bit addresses, and resolution.
lazybiosGetType33 returns a lazybiosType33Array_t holding every matching structure. Iterate entries using count. A non-NULL result whose count is zero means the table contains no structure of this type; NULL means the arguments were unusable or an allocation failed. Release the set with lazybiosFreeType33, or assign it to ctx->Type33 and let lazybiosCleanup own it.
Every record carries its own SMBIOS handle and the structure length the firmware reported.
Encoded fields are decoded during parsing into decoded, which mirrors the raw member names (error_granularity, error_operation, error_type). The raw value stays alongside it, so both the encoding and its meaning are available.
Decode error_type, error_granularity, and error_operation with decoded.error_type, decoded.error_granularity, and decoded.error_operation.
vendor_syndrome contains vendor-specific ECC syndrome or CRC information; zero means unknown. memory_array_error_address is relative to the memory array's bus, while device_error_address is relative to the failing memory device. The value 0x8000000000000000 means unknown for either address. error_resolution gives the byte range within which the error can be located; 0x80000000 means unknown. These encodings remain present raw values.
Release the returned array with lazybiosFreeType33, or assign it to lazybiosCTX::Type33 and use lazybiosCleanup.