1 /* Copyright (C) 2000 Free Software Foundation, Inc.
2 Contributed by Nathan Sidwell 23 Feb 2000 <nathan@codesourcery.com> */
4 /* __alignof__ should never return a non-power of 2
5 eg, sizeof(long double) might be 12, but that means it must be alignable
6 on a 4 byte boundary. */
8 void check (char const *type
, int align
)
10 if ((align
& -align
) != align
)
17 #define QUOTE(s) QUOTE_(s)
19 #define check(t) check(QUOTE(t), __alignof__(t))
21 // This struct should have an alignment of the lcm of all the types. If one of
22 // the base alignments is not a power of two, then A cannot be power of two
34 unsigned long long ull
;
47 check (unsigned short);
51 check (unsigned long);
52 check (signed long long);
53 check (unsigned long long);