PASCAL, Attributes, ALIGN
*Conan The Librarian
The ALIGN attribute controls the default alignment rules in a compilation unit or for a TYPE or VAR declaration section. The ALIGN attribute takes a single keyword parameter that has the same name and meaning as the keywords for the /ALIGN qualifier. Note that specifying the ALIGN attribute overrides any value you previously specified with the /ALIGN qualifier. Syntax: [ALIGN(keyword)] You can specify the following keywords: Value Action Default Information ----- ------ ------- ----------- NATURAL Uses natural alignment when Default on OpenVMS Alpha positioning record fields and OpenVMS I64 systems. or array components. Natural alignment is when a record field or an array component is positioned on a boundary based on its size. For example, 32-bit integers are aligned on the nearest 32-bit boundary. VAX Uses byte alignment when pos- Default on OpenVMS VAX itioning record fields or array systems. components. Record fields or array components larger than 32 bits are positioned on the nearest byte boundary. On OpenVMS VAX systems, when you specify a value of NATURAL, automatic variables are aligned on longword boundaries instead of quadword boundaries. This occurs because the largest allowable alignment for the stack is longword alignment.