1.1.1 $A or $ALIGN : Align Data

The f$ALIGN directive can be used to select the data alignment strategy of the compiler for records. It takes a numerical argument which can be 1, 2, 4, 8, 16 or 32, specifying the alignment boundary in bytes. For these values, it has the same eect as the f$PACKRECORDSg directive (see section 1.1.58, page 142).

Thus, the following

{$A 8}

is equivalent to

{$PACKRECORDS 8}

and species to the compiler that all data inside a record should be aligned on 8 byte boundaries.

In MACPAS mode, additionally it can have the following values:

MAC68K
Species alignment following the m68K ABI.
POWER
Species alignment following the PowerPC ABI.
RESET
Resets the default alignment.
ON
Same as specifying 4.
OFF
Same as specifying 1.

These values are not available in the f$PACKRECORDSg directive.