shithub: scc

Download patch

ref: 486b07bfc9005abb6f11749d48d07fccd7118ef2
parent: e7ca69b68ebc64e8bea02198105838ac8726e528
author: Roberto E. Vargas Caballero <[email protected]>
date: Tue Jul 28 03:30:31 EDT 2015

Woraround to crash in funcdcl()

funcdcl() crash with a declaration like f() because the 'default int'
rule was generating a integer type which didn't match any parameter.
This commit fix the problem detecting it.

This is only a workaround until I rewrite decl.c

--- a/cc1/decl.c
+++ b/cc1/decl.c
@@ -69,7 +69,7 @@
 	expect('(');
 
 	n = noname = 0;
-	do {
+	if (yytoken != ')') do {
 		if ((sym = parameter()) == NULL) {
 			if (n == 0)
 				break;