1 struct A
2 {
3   void* q;
4   short i;
5 };
6 
7 union U
8 {
9   char* p;
10   struct A a;
11 };
12 
foo(union U u)13 struct A foo(union U u)
14 {
15   struct A a = { 0, 0 };
16   a = u.a;
17   return a;
18 }
19