Fix PR2017 and silence some bogus errors.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49068 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/test/Sema/array-init.c b/test/Sema/array-init.c
index 849737e..56be42c 100644
--- a/test/Sema/array-init.c
+++ b/test/Sema/array-init.c
@@ -126,8 +126,7 @@
       { 6 },
     },
   };
-  // FIXME: the following two errors are redundant
-  int a[][] = { 1, 2 }; // expected-error{{array has incomplete element type 'int []'}} expected-error{{variable has incomplete type 'int []'}}
+  int a[][] = { 1, 2 }; // expected-error{{array has incomplete element type 'int []'}}
 }
 
 typedef int AryT[];
@@ -159,7 +158,7 @@
   char c3[5] = { "Hello" };
   char c4[4] = { "Hello" }; //expected-warning{{initializer-string for char array is too long}}
 
-  int i3[] = {}; //expected-error{{at least one initializer value required to size array}} expected-error{{variable has incomplete type 'int []'}} expected-warning{{use of GNU empty initializer extension}}
+  int i3[] = {}; //expected-error{{at least one initializer value required to size array}} expected-warning{{use of GNU empty initializer extension}}
 }
 
 void variableArrayInit() {
diff --git a/test/Sema/decl-invalid.c b/test/Sema/decl-invalid.c
index d241adc..281e8a8 100644
--- a/test/Sema/decl-invalid.c
+++ b/test/Sema/decl-invalid.c
@@ -1,3 +1,11 @@
 // RUN: clang %s -fsyntax-only -verify
 
 typedef union <anonymous> __mbstate_t;  // expected-error: {{expected identifier or}}
+
+
+// PR2017
+void x(); 
+int a() {
+  int r[x()];  // expected-error: {{size of array has non-integer type 'void'}}
+}
+