1 struct A
2 {
3   int i;
4   long l;
5 };
6 
7 struct B
8 {
9   int i;
10 };
11 
12 struct C
13 {
14   int i;
15   struct B b;
16 };
17 
foo(struct A a)18 struct B foo (struct A a)
19 {
20   struct C *c = (struct C *) &a;
21   return c->b;
22 }
bar(struct A a,struct B b)23 void bar (struct A a, struct B b)
24 {
25   struct C *c = (struct C *) &a;
26   c->b = b;
27 }
28