aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--test/CFrontend/2008-01-28-UnionSize.c24
1 files changed, 24 insertions, 0 deletions
diff --git a/test/CFrontend/2008-01-28-UnionSize.c b/test/CFrontend/2008-01-28-UnionSize.c
new file mode 100644
index 0000000..ea2c863
--- /dev/null
+++ b/test/CFrontend/2008-01-28-UnionSize.c
@@ -0,0 +1,24 @@
+// RUN: %llvmgcc %s -S -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 ) { }