1 #include <stdio.h>
2 
3 class c{
4 public:
5   long double f;
6 };
7 
8 
9 static class sss: public c{
10 public:
11   long double m;
12 } sss;
13 
14 #define _offsetof(st,f) ((char *)&((st *) 16)->f - (char *) 16)
15 
16 int main (void) {
17   printf ("++Class with longdouble inhereting class with longdouble:\n");
18   printf ("size=%d,align=%d\n", sizeof (sss), __alignof__ (sss));
19   printf ("offset-longdouble=%d,offset-longdouble=%d,\nalign-longdouble=%d,align-longdouble=%d\n",
20           _offsetof (class sss, f), _offsetof (class sss, m),
21           __alignof__ (sss.f), __alignof__ (sss.m));
22   return 0;
23 }
24