diff --git a/src/pike_types.c b/src/pike_types.c
index dbd5d466609586bc189ea7c91f7450e64283661a..d36881149db2b609a5e43a9576555eea548c35af 100644
--- a/src/pike_types.c
+++ b/src/pike_types.c
@@ -5,7 +5,7 @@
 \*/
 /**/
 #include "global.h"
-RCSID("$Id: pike_types.c,v 1.191 2002/07/23 12:03:56 grubba Exp $");
+RCSID("$Id: pike_types.c,v 1.192 2002/07/23 13:23:04 mast Exp $");
 #include <ctype.h>
 #include "svalue.h"
 #include "pike_types.h"
@@ -2516,10 +2516,16 @@ static struct pike_type *low_match_types2(struct pike_type *a,
 	if(a->cdr != b->cdr) return 0;
       }else{
 	/* object(0 *) =? object(0 *) */
+#if 0
+	/* This is known to cause trouble in some cases when comparing
+	 * the same function prototype in the first and second passes
+	 * (got "Prototype doesn't match for function foo" even though
+	 * there was no other prototype for that function). /mast */
 	struct program *ap,*bp;
 	ap = id_to_program((ptrdiff_t)a->cdr);
 	bp = id_to_program((ptrdiff_t)b->cdr);
 	if (!is_compatible(ap, bp)) return 0;
+#endif
 	break;
       }
     }