Ralf Wildenhues wrote:
> Thanks.  Note this still doesn't cope with -qalign, nor would I bet
> money that AIX won't ever use 8 byte alignment for 4 byte types (or
> similar).

Such an alignment rule would mean that in a
  struct { int x; int y; int z; }
or
  struct { float x; float y; float z; }
half of the memory is wasted. Since 4-byte types are predominant, it
sounds quite unlikely that ABI designers could devise such a thing for
a general-purpose machine. (For a DSP it's different.)

> But since we (well, I ;-) still don't know what the bug is, and I
> don't have access to AIX 3.2.5 to check, I can't really judge whether...

The comment says that it's a "bug with enums constants defined as offsetof
values".

> ...AC_CHECK_ALIGNOF needs to be adjusted for this.

Since AC_CHECK_ALIGNOF uses _AC_COMPUTE_INT, and _AC_COMPUTE_INT doesn't
use the value in an 'enum' (it uses it only in comparisons, array bounds
and 'long'/'unsigned long' variables), there is no problem.

Bruno


Reply via email to