summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gcc.target/rx/pack.c
blob: 97c44f05d695279ed2deb67d70cdecda4d4b7016 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
/* { dg-do run } */

typedef unsigned short	INT16U;

typedef struct tst_2
{
  INT16U	f0;	// [+0]
  INT16U *	f1;	// [+2]
  INT16U	f2;	// [+6]
  INT16U *	f3;	// [+8]
} __attribute__ ((__packed__)) t2;

#include <stddef.h>
#include <stdlib.h>

int main (void)
{
  if (offsetof (t2, f1) != 2)
    abort ();
  if (offsetof (t2, f2) != 6)
    abort ();
  if (offsetof (t2, f3) != 8)
    abort ();
  exit (0);
}