Fix rdar://6095136, various crashes with incomplete enum types.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@54074 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/test/Sema/enum.c b/test/Sema/enum.c
index 2a20d3d..8d184d3 100644
--- a/test/Sema/enum.c
+++ b/test/Sema/enum.c
@@ -33,3 +33,18 @@
 union u0;    // expected-error {{previous use is here}}
 enum u0 { U0A }; // expected-error {{error: use of 'u0' with tag type that does not match previous declaration}}
 
+
+// rdar://6095136
+extern enum some_undefined_enum ve2; // expected-warning {{ISO C forbids forward references to 'enum' types}}
+
+void test4() {
+  for (; ve2;) // expected-error {{statement requires expression of scalar type}}
+    ;
+  (_Bool)ve2;  // expected-error {{statement requires expression of scalar type}}
+
+  for (; ;ve2)
+    ;
+  (void)ve2;
+  ve2;
+}
+