From 554bcb69c2d785a011a30e7db87a36a87fe7db10 Mon Sep 17 00:00:00 2001
From: dim <dim@FreeBSD.org>
Date: Wed, 15 Aug 2012 20:02:54 +0000
Subject: Vendor import of clang trunk r161861:
 http://llvm.org/svn/llvm-project/cfe/trunk@161861

---
 test/SemaCXX/invalid-member-expr.cpp | 31 +++++++++++++++++++++++++++++++
 1 file changed, 31 insertions(+)

(limited to 'test/SemaCXX/invalid-member-expr.cpp')

diff --git a/test/SemaCXX/invalid-member-expr.cpp b/test/SemaCXX/invalid-member-expr.cpp
index 287d9af..87da79a 100644
--- a/test/SemaCXX/invalid-member-expr.cpp
+++ b/test/SemaCXX/invalid-member-expr.cpp
@@ -37,3 +37,34 @@ namespace test3 {
     string::iterator i = s.foo(); // expected-error {{no member named 'foo'}}
   }
 }
+
+
+// Make sure we don't crash.
+namespace rdar11293995 {
+
+struct Length {
+  explicit Length(PassRefPtr<CalculationValue>); // expected-error {{unknown type name}} \
+                    expected-error {{expected ')'}} \
+                    expected-note {{to match this '('}}
+};
+
+struct LengthSize {
+    Length m_width;
+    Length m_height;
+};
+
+enum EFillSizeType { Contain, Cover, SizeLength, SizeNone };
+
+struct FillSize {
+    EFillSizeType type;
+    LengthSize size;
+};
+
+class FillLayer {
+public:
+    void setSize(FillSize f) { m_sizeType = f.type;}
+private:
+    unsigned m_sizeType : 2;
+};
+
+}
-- 
cgit v1.1