xref: /openbsd-src/gnu/usr.bin/gcc/gcc/testsuite/consistency.vlad/layout/c-pointer-1-c-longlong.cpp (revision 91f110e064cd7c194e59e019b83bb7496c1c84d4)
1 #include <stdio.h>
2 
3 class c{
4 public:
5   char * f;
6 };
7 
8 
9 static class sss: public c{
10 public:
11   long long m;
12 } sss;
13 
14 #define _offsetof(st,f) ((char *)&((st *) 16)->f - (char *) 16)
15 
16 int main (void) {
17   printf ("++Class with longlong inhereting class with pointer:\n");
18   printf ("size=%d,align=%d\n", sizeof (sss), __alignof__ (sss));
19   printf ("offset-pointer=%d,offset-longlong=%d,\nalign-pointer=%d,align-longlong=%d\n",
20           _offsetof (class sss, f), _offsetof (class sss, m),
21           __alignof__ (sss.f), __alignof__ (sss.m));
22   return 0;
23 }
24