second pass on interface fixes and tests.

R=ken
OCL=22370
CL=22372
diff --git a/src/cmd/gc/go.h b/src/cmd/gc/go.h
index 85bc749..da4f871 100644
--- a/src/cmd/gc/go.h
+++ b/src/cmd/gc/go.h
@@ -633,9 +633,9 @@
 int	isinter(Type*);
 int	isnilinter(Type*);
 int	isddd(Type*);
-Type*	ismethod(Type*);
+Type*	dclmethod(Type*);
 Type*	methtype(Type*);
-int	needaddr(Type*);
+int	methconv(Type*);
 Sym*	signame(Type*);
 int	bytearraysz(Type*);
 int	eqtype(Type*, Type*, int);
@@ -682,6 +682,7 @@
 int	Zconv(Fmt*);
 
 int	lookdot0(Sym*, Type*, Type**);
+Type*	lookdot1(Sym*, Type*, Type*);
 int	adddot1(Sym*, Type*, int, Type**);
 Node*	adddot(Node*);
 void	expand0(Type*);
@@ -798,7 +799,9 @@
 Node*	chanop(Node*, int);
 Node*	arrayop(Node*, int);
 Node*	ifaceop(Type*, Node*, int);
-int	isandss(Type*, Node*);
+int	ifaceas(Type*, Type*);
+void	ifacecheck(Type*, Type*, int);
+void	runifacechecks(void);
 Node*	convas(Node*);
 void	arrayconv(Type*, Node*);
 Node*	colas(Node*, Node*);