diff --git a/src/modules/_Stdio/socket.c b/src/modules/_Stdio/socket.c
index f59663a223524b7cb510fa39ce55f147cbbcf321..75b369cbedfed955cccac0ead16af102e25747a8 100644
--- a/src/modules/_Stdio/socket.c
+++ b/src/modules/_Stdio/socket.c
@@ -759,7 +759,7 @@ void init_stdio_port(void)
 	       offset + OFFSETOF(port, id), PIKE_T_MIXED);
   /* function(int|string,void|mixed,void|string:int) */
   ADD_FUNCTION("bind", port_bind,
-	       tFunc(tOr(tInt,tStr) tOr(tVoid,tMix) tOr(tVoid,tStr),tInt), 0);
+	       tFunc(tOr(tInt,tStr) tOr(tVoid,tMix) tOr(tVoid,tStr) tOr(tVoid,tInt),tInt), 0);
 #ifdef HAVE_SYS_UN_H
   /* function(int|string,void|mixed,void|string:int) */
   ADD_FUNCTION("bind_unix", bind_unix,