+++ /dev/null
-struct s {
- char x[30];
-};
-
-struct s x[] = { "blup" };
-
-int main(void)
-{
- return x[0].x[0] != 'b';
-}
echo ""
done
+for i in should_warn/*.c; do
+ echo -n "Compile $i..."
+ ../cparser $i -Wall -O3 -o prog.cparser >> messages.cparser 2>&1 || echo -n " CPARSER DID NOT COMPILE"
+ gcc -Wall -m32 -std=gnu99 $i -O3 -o prog.gcc >> messages.gcc 2>&1 || echo -n " GCC DID NOT COMPILER"
+ echo ""
+ if diff -u /dev/null messages.cparser > /dev/null; then
+ echo -n " CPARSER HAD NO WARNINGS"
+ fi
+ if diff -u /dev/null messages.gcc > /dev/null; then
+ echo -n " GCC HAD NO WARNINGS"
+ fi
+done
+
for i in shouldfail/*.c; do
echo -n "Compile $i..."
../cparser $i -O3 -o prog.cparser >> messages.cparser 2>&1 && echo -n " CPARSER COMPILED"
+++ /dev/null
-static const int l = 5;
-
-struct k {
- int c, d;
-};
-
-struct S {
- int a;
- struct k k;
-};
-
-struct S arr[] = { 1, (struct k) { 4, 5 } };
-
-typedef int k[];
-
-k var = { 1, 2, 3, 4, 5 };
-k var2 = { 1, 2, 3, 4 };
-
-int main(void)
-{
- if((sizeof(var2)/sizeof(int)) != 4)
- return 1;
-
- if((sizeof(var)/sizeof(int)) != 5)
- return 2;
-
- return 0;
-}
--- /dev/null
+struct s {
+ char x[30];
+};
+
+struct s x[] = { "blup" };
+
+int main(void)
+{
+ return x[0].x[0] != 'b';
+}