1 // RUN: %clang_cc1 %s -emit-llvm -o - 2 3 #pragma pack(push, 2) 4 struct H { 5 unsigned long f1; 6 unsigned long f2; 7 union { 8 struct opaque1 *f3; 9 struct opaque2 *f4; 10 struct { 11 struct opaque3 *f5; 12 unsigned short f6; 13 } f7; 14 } f8; 15 }; 16 #pragma pack(pop) 17 18 struct E { 19 unsigned long f1; 20 unsigned long f2; 21 }; 22 23 typedef long (*FuncPtr) (); 24 25 extern long bork(FuncPtr handler, const struct E *list); 26 27 static long hndlr() 28 { 29 struct H cmd = { 4, 412 }; 30 struct H cmd2 = { 4, 412, 0 }; 31 return 0; 32 } 33 void foo(void *inWindow) { 34 static const struct E events[] = { 35 { 123124, 1 } 36 }; 37 bork(hndlr, events); 38 } 39