File: type-attribute-align.c

package info (click to toggle)
sparse 0.6.5~rc1-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 5,768 kB
  • sloc: ansic: 46,405; sh: 614; perl: 299; python: 296; makefile: 282
file content (19 lines) | stat: -rw-r--r-- 442 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#define __aligned(N)	__attribute__((aligned(N)))
#define alignof(X)	__alignof__(X)

struct s {
	short a, b, c;
} __aligned(2*sizeof(short));

static int fs(void) { return  sizeof(struct s); }
static int fa(void) { return alignof(struct s); }

void main(void)
{
	_Static_assert( sizeof(struct s) == 4 * sizeof(short), "size");
	_Static_assert(alignof(struct s) == 2 * sizeof(short), "alignment");
}

/*
 * check-name: type-attribute-align
 */