output args declared
arguments in first block for diagnostics
thomo return
better syntax error recovery

SVN=126045
diff --git a/src/cmd/gc/go.h b/src/cmd/gc/go.h
index 828ebbb..7f5b382 100644
--- a/src/cmd/gc/go.h
+++ b/src/cmd/gc/go.h
@@ -80,6 +80,7 @@
 	uchar	thistuple;
 	uchar	outtuple;
 	uchar	intuple;
+	uchar	outnamed;
 
 	Sym*	sym;
 	long	vargen;		// unique name for OTYPE/ONAME
@@ -144,7 +145,7 @@
 	Sym*	psym;		// import
 	Sym*	sym;		// various
 	long	vargen;		// unique name for OTYPE/ONAME
-	ulong	lineno;
+	long	lineno;
 	vlong	xoffset;
 };
 #define	N	((Node*)0)
@@ -525,8 +526,8 @@
 Type*	dostruct(Node*, int);
 Type**	stotype(Node*, Type**);
 Type*	sortinter(Type*);
-void	markdcl(char*);
-void	popdcl(char*);
+void	markdcl(void);
+void	popdcl(void);
 void	poptodcl(void);
 void	markdclstack(void);
 void	testdclstack(void);
@@ -566,6 +567,7 @@
  */
 void	walk(Node*);
 void	walktype(Node*, int);
+void	walkbool(Node*);
 Type*	walkswitch(Node*, Type*(*)(Node*, Type*));
 int	casebody(Node*);
 int	whatis(Node*);