1static _Alignas(8)	int v;
2static _Alignas(long)	int t;
3static _Alignas(void *)	int p;
4static _Alignas(int[4])	int a;
5static _Alignas(0)	int z;
6static _Alignas(3)	int bnpow2;
7static _Alignas(-1)	int bneg;
8static _Alignas(-2)	int bnegpow2;
9static _Alignas(v)	int bnc;
10static _Alignas(+)	int bsyn;
11
12static int check(void)
13{
14	if (_Alignof(v) != 8)
15		return -1;
16	if (_Alignof(t) != _Alignof(long))
17		return -1;
18	if (_Alignof(p) != _Alignof(void *))
19		return -1;
20	if (_Alignof(a) != _Alignof(int))
21		return -1;
22
23	return 0;
24}
25
26/*
27 * check-name: c11-alignas
28 * check-command: test-linearize -std=c11 $file
29 *
30 * check-error-start
31c11-alignas.c:6:25: warning: non-power-of-2 alignment
32c11-alignas.c:7:25: warning: non-positive alignment
33c11-alignas.c:8:25: warning: non-positive alignment
34c11-alignas.c:9:17: error: bad constant expression
35c11-alignas.c:10:17: error: Syntax error in unary expression
36 * check-error-end
37 *
38 * check-output-ignore
39 * check-output-contains: ret\\.32 *\\$0
40 */
41