5 int _Alignas(double) i4
;
8 /* The following are currently wrongly accepted by TCC but really shouldn't. */
9 int _Alignas(int _Alignas(16)) i6
; //wrong, 'int _Alignas(16)' is no type-name
10 typedef int _Alignas(16) int16aligned_t
; //wrong, _Alignas invalid on typedef
13 /* i8 should get an alignment of 16, because unlike _Alignas the
14 corresponding attribute _does_ apply to type-name, though not in
15 some clang versions. */
16 int _Alignas(int __attribute__((aligned(16)))) i8
;
17 extern int printf(const char*, ...);
19 #define alignof(x) (int)__alignof(x)
21 #define alignof(x) (int)__alignof__(x)
25 printf("%d %d %d %d\n",
26 alignof(i1
) == 16, alignof(i4
) == alignof(double),
27 alignof(i5
) == alignof(int) , alignof(i8
) == 16);