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