shithub: scc

Download patch

ref: f7fddfcd7659f0545c8b3eb367f11f3f68dab7c0
parent: 8a62641325823bc830ca03e1ab2c3d63e0a36922
author: Roberto E. Vargas Caballero <k0ga@shike2.com>
date: Mon Aug 17 11:58:12 EDT 2015

Remove legacy error recovery code in compound()

The error recovery must be rewritten, so this code is disturbing.

--- a/cc1/stmt.c
+++ b/cc1/stmt.c
@@ -301,14 +301,10 @@
 void
 compound(Symbol *lbreak, Symbol *lcont, Caselist *lswitch)
 {
-	extern jmp_buf recover;
-
 	pushctx();
 	expect('{');
 
 	for (;;) {
-		setsafe(END_COMP);
-		setjmp(recover);
 		if (yytoken == '}')
 			break;
 		blockit(lbreak, lcont, lswitch);