gc: implement goto restriction

Remove now-unnecessary zeroing of stack frames.

R=ken2
CC=golang-dev
https://golang.org/cl/4641044
diff --git a/src/cmd/gc/typecheck.c b/src/cmd/gc/typecheck.c
index 04dc1a5..dfe0f30 100644
--- a/src/cmd/gc/typecheck.c
+++ b/src/cmd/gc/typecheck.c
@@ -2716,6 +2716,11 @@
 	default:
 		fatal("typecheckdef %O", n->op);
 
+	case OGOTO:
+	case OLABEL:
+		// not really syms
+		break;
+
 	case OLITERAL:
 		if(n->ntype != N) {
 			typecheck(&n->ntype, Etype);
@@ -2772,7 +2777,7 @@
 		if(n->defn == N) {
 			if(n->etype != 0)	// like OPRINTN
 				break;
-			if(nerrors > 0) {
+			if(nsavederrors+nerrors > 0) {
 				// Can have undefined variables in x := foo
 				// that make x have an n->ndefn == nil.
 				// If there are other errors anyway, don't