diff options
Diffstat (limited to 'clang/test/CodeGen/2008-01-28-UnionSize.c')
-rw-r--r-- | clang/test/CodeGen/2008-01-28-UnionSize.c | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/clang/test/CodeGen/2008-01-28-UnionSize.c b/clang/test/CodeGen/2008-01-28-UnionSize.c new file mode 100644 index 0000000..14f363d --- /dev/null +++ b/clang/test/CodeGen/2008-01-28-UnionSize.c @@ -0,0 +1,24 @@ +// RUN: %clang_cc1 %s -emit-llvm -o - +// PR 1861 + +typedef unsigned char __u8; +typedef unsigned int __u32; +typedef unsigned short u16; +typedef __u32 __le32; +struct bcm43xx_plcp_hdr6 { + union { + __le32 data; + __u8 raw[6]; + } + __attribute__((__packed__)); +} + __attribute__((__packed__)); +struct bcm43xx_txhdr { + union { + struct { + struct bcm43xx_plcp_hdr6 plcp; + }; + }; +} + __attribute__((__packed__)); +static void bcm43xx_generate_rts(struct bcm43xx_txhdr *txhdr ) { } |