Nick Bowler <[email protected]> writes:
> C11 also provides max_align_t, which is *probably* what you are looking
> for but obviously isn't available everywhere. Anyway, on older
> implementations without max_align_t, the following type is probably a
> "good enough" substitute for it:
> union {
> char a;
> short b;
> int c;
> long d;
> long long e;
> float f;
> double g;
> long double h;
> void *i;
> }
I would add a function pointer, but yes.
> You could use AC_CHECK_TYPE to test for max_align_t, then use
> AC_CHECK_ALIGNOF on the above monster if it is not available.
> You may also want to test for long long availability before
> including it in the union...
And long double, which IIRC is more of a portability issue than long long.
--
Russ Allbery ([email protected]) <http://www.eyrie.org/~eagle/>
_______________________________________________
Autoconf mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/autoconf