--- /dev/null
+/* Frontend assert while building initialisers */
+
+union {
+ int i;
+ char a[4];
+} blub = {
+ .a[2] = 9,
+ .i = 23
+};
+
+int main()
+{
+ return 0;
+}
--- /dev/null
+__extension__ typedef signed long long int __int64_t;
+__extension__ typedef unsigned long long int __uint64_t;
+
+int main(void) {
+ __int64_t i = 0;
+ return i;
+}
--- /dev/null
+static int test(int a, int b);
+
+static int adr(int *x);
+
+static int test1(int a, int b) {
+ return test(a,b);
+}
+
+static int test2(int a, int b) {
+ int arr[2];
+
+ arr[0] = a;
+ arr[1] = b;
+
+ adr(arr);
+ return arr[0] + arr[1];
+}
+
+int main(void)
+{
+ return 0;
+}
--- /dev/null
+int printf(const char *str, ...);
+
+int main(void) {
+ printf("%d\n", (int) sizeof (const void*));
+ return 0;
+}
--- /dev/null
+int puts(const char *str);
+
+int test(s)
+ char *s;
+{
+ puts(s);
+}
+
+int main(void) {
+ test("Hello World", 0);
+ return 0;
+}
--- /dev/null
+#include <assert.h>
+
+static int switch1(int k) {
+ switch(k) {
+ case 42:
+ return 5;
+ case 13:
+ return 7;
+ }
+ return 3;
+}
+
+int main(void)
+{
+ assert(switch1(42) == 5);
+ assert(switch1(13) == 7);
+ assert(switch1(700) == 3);
+ assert(switch1(-32000) == 3);
+ return 0;
+}