summaryrefslogtreecommitdiff
path: root/test/FrontendC++/2009-10-27-crash.cpp
diff options
context:
space:
mode:
authorDale Johannesen <dalej@apple.com>2009-10-27 20:06:05 +0000
committerDale Johannesen <dalej@apple.com>2009-10-27 20:06:05 +0000
commit4fc1231730109e966dbfca50562c4ca78e319b21 (patch)
tree598033478881508c6ab8e1c580b94b44b9bb9e3c /test/FrontendC++/2009-10-27-crash.cpp
parentf006b183e2d2bebcf6968d1dd7350397c95b0325 (diff)
downloadllvm-4fc1231730109e966dbfca50562c4ca78e319b21.tar.gz
llvm-4fc1231730109e966dbfca50562c4ca78e319b21.tar.bz2
llvm-4fc1231730109e966dbfca50562c4ca78e319b21.tar.xz
Testcase for llvm-gcc patch 85284.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85287 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/FrontendC++/2009-10-27-crash.cpp')
-rw-r--r--test/FrontendC++/2009-10-27-crash.cpp42
1 files changed, 42 insertions, 0 deletions
diff --git a/test/FrontendC++/2009-10-27-crash.cpp b/test/FrontendC++/2009-10-27-crash.cpp
new file mode 100644
index 0000000000..ead55e43a5
--- /dev/null
+++ b/test/FrontendC++/2009-10-27-crash.cpp
@@ -0,0 +1,42 @@
+// RUN: %llvmgxx -emit-llvm -S %s
+
+typedef struct
+{
+ unsigned short a : 1;
+ unsigned short b : 2;
+ unsigned short c : 1;
+ unsigned short d : 1;
+ unsigned short e : 1;
+ unsigned short f : 1;
+ unsigned short g : 2;
+ unsigned short : 7;
+ union
+ {
+ struct
+ {
+ unsigned char h : 1;
+ unsigned char i : 1;
+ unsigned char j : 1;
+ unsigned char : 5;
+ };
+ struct
+ {
+ unsigned char k : 3;
+ unsigned char : 5;
+ };
+ };
+ unsigned char : 8;
+} tt;
+
+typedef struct
+{
+ unsigned char s;
+ tt t;
+ unsigned int u;
+} ttt;
+
+ttt X = {
+ 4,
+ { 0 },
+ 55,
+};