Merge from mainline
[official-gcc.git] / gcc / testsuite / consistency.vlad / layout / class-char-and-virtual.cpp
blobd00b7c418bb9820ad7d74b26d9c12b640d37e7dc
1 #include <stdio.h>
3 static class sss {
4 public:
5 char m;
6 virtual int f (int i) {return i;}
7 } sss;
9 #define _offsetof(st,f) ((char *)&((st *) 16)->f - (char *) 16)
11 int main (void) {
12 printf ("+++Class starting with char and containing virtual function:\n");
13 printf ("size=%d,align=%d\n", sizeof (sss), __alignof__ (sss));
14 printf ("offset-m=%d,align-m=%d\n",
15 _offsetof (class sss, m), __alignof__ (sss.m));