diff --git a/obj/mpa.c b/obj/mpa.c
index 24c432c..c27f827 100644
--- a/obj/mpa.c
+++ b/obj/mpa.c
@@ -450,7 +450,7 @@
   return 1;
 }
 
-LiesArtikel(str) {
+int LiesArtikel(string str) {
   string s1;
   int i1;
   if ( !str ) return 0;
@@ -460,6 +460,7 @@
     return lies(to_int(i1));
   if (sscanf(str,"artikel %s",s1))
     return lies(s1);
+  return 0;
 }
 
 
diff --git a/obj/tools/teller/t_base.c b/obj/tools/teller/t_base.c
index 8336d3b..0747a4a 100644
--- a/obj/tools/teller/t_base.c
+++ b/obj/tools/teller/t_base.c
@@ -281,12 +281,12 @@
 		return objectp(argv[0]);
 }
 
-static isSubStr( pl, str, len )
+static int isSubStr( object pl, string str, int len )
 {
 	return getuid(pl)[0..len] == str;
 }
 
-static becomes_pl(argv)
+static mixed becomes_pl( mixed argv)
 {
 	object pl;
 	object* pllist;
@@ -318,7 +318,9 @@
 	return argv[0];
 }
 
-static DumpObj( ob )
+static mixed DumpMapp( mixed ob, int i);
+
+static mixed DumpObj( mixed ob )
 {
   string ans;
   int i,j;
@@ -347,7 +349,7 @@
   }
 }
 
-static DumpMapp(ob,i)
+static mixed DumpMapp( mixed ob, int i)
 {
   int j,vz;
   string ans;
