blob: b7ae2abc3be3794287e15a995704bbedee73eab9 [file] [log] [blame]
static _Alignas(8) int v;
static _Alignas(long) int t;
static _Alignas(void *) int p;
static _Alignas(int[4]) int a;
static _Alignas(0) int z;
static _Alignas(3) int bnpow2;
static _Alignas(-1) int bneg;
static _Alignas(-2) int bnegpow2;
static _Alignas(v) int bnc;
static _Alignas(+) int bsyn;
static int check(void)
{
if (_Alignof(v) != 8)
return -1;
if (_Alignof(t) != _Alignof(long))
return -1;
if (_Alignof(p) != _Alignof(void *))
return -1;
if (_Alignof(a) != _Alignof(int))
return -1;
return 0;
}
/*
* check-name: c11-alignas
* check-command: test-linearize -std=c11 $file
*
* check-error-start
c11-alignas.c:6:25: warning: non-power-of-2 alignment
c11-alignas.c:7:25: warning: non-positive alignment
c11-alignas.c:8:25: warning: non-positive alignment
c11-alignas.c:9:17: error: bad constant expression
c11-alignas.c:10:17: error: Syntax error in unary expression
* check-error-end
*
* check-output-ignore
* check-output-contains: ret\\.32 *\\$0
*/