Bernie wrote: > Robert wrote: >> begin record MyGoodType1 >> dim as double d >> dim as byte b >> dim &&& // pad size to multiple of 8 >> end record > > 1) In the above, should "// pad size to multiple of 8" read "// pad > size to multiple of 16"? > The reference manual states: > Dim &&&, var Forces var to begin on an extended-word boundary > (address divisible by 16) > 2) Should we align our vars at addresses divisible by 8 or 16?... > or doesn't it matter? That darn auto-repeat! Should be: dim && // pad size to multiple of 8 Records are optimally aligned according to the needs of the longest field. If that is a long, single or pointer, then 4-byte alignment is required. If it's a double, then 8-byte. 16-byte alignment is required only for vectors (AltiVec). Typing too many &&&&s wastes stack space but is not otherwise harmful. Robert P.