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