runtime: make type assertion a runtime.Error, the first of many

R=r
CC=golang-dev
https://golang.org/cl/805043
diff --git a/src/pkg/runtime/runtime.h b/src/pkg/runtime/runtime.h
index adb8311..b4011b7 100644
--- a/src/pkg/runtime/runtime.h
+++ b/src/pkg/runtime/runtime.h
@@ -361,7 +361,6 @@
 /*
  * very low level c-called
  */
-void	callString(void(*fn)(void), void *arg, String *out);
 void	gogo(Gobuf*, uintptr);
 void	gogocall(Gobuf*, void(*)(void));
 uintptr	gosave(Gobuf*);
@@ -372,7 +371,6 @@
 void	throw(int8*);
 uint32	rnd(uint32, uint32);
 void	prints(int8*);
-void	printany(Eface);
 void	printf(int8*, ...);
 byte*	mchr(byte*, byte, byte*);
 void	mcpy(byte*, byte*, uint32);
@@ -432,6 +430,7 @@
 void	gettime(int64*, int32*);
 int32	callers(int32, uintptr*, int32);
 int64	nanotime(void);
+void	panic(int32);
 
 #pragma	varargck	argpos	printf	1
 
@@ -530,8 +529,15 @@
 void	runtime_printhex(uint64);
 void	runtime_printslice(Slice);
 void	runtime_printcomplex(Complex128);
-void	panic(int32);
 void	reflect·call(byte*, byte*, uint32);
+void	·panic(Eface);
+
+/*
+ * runtime c-called (but written in Go)
+ */
+void ·newError(String, Eface*);
+void	·printany(Eface);
+void	·newTypeAssertionError(Type*, Type*, Type*, String*, String*, String*, String*, Eface*);
 
 /*
  * wrapped for go users