No tengo idea de qué se supone que debe hacer ALIGMENT_ATTRIBUTE(B) en typedef porque es una definición vacía. ¿Forma una función?
#define ALIGNMENT_ATTRIBUTE(B) typedef ALIGNMENT_ATTRIBUTE(8) UInt64 T_AUInt64;Se puede usar en plataformas donde la alineación es importante.
Por ejemplo, se puede usar en plataformas donde uint64 debe estar ubicado en una dirección que sea divisible por 8.
En tal escenario, necesitaría ampliar la definición de ALIGNMENT_ATTRIBUTE(B) utilizando el mecanismo de cumplimiento de alineación de la plataforma (que suele ser específico del compilador), como #pragma align(8) o alignas(8) o _declspec(align(8)) .
En su ejemplo específico, se define como nada, lo que implica que su plataforma no tiene restricciones de alineación.