--- a/lib/nfkc.c
+++ b/lib/nfkc.c
@@ -462,12 +462,12 @@
  **/
 static gchar *
 g_ucs4_to_utf8 (const gunichar * str,
-		glong len, glong * items_read, glong * items_written)
+		gssize len, gsize * items_read, gsize * items_written)
 {
-  gint result_length;
+  gsize result_length;
   gchar *result = NULL;
   gchar *p;
-  gint i;
+  gsize i;
 
   result_length = 0;
   for (i = 0; len < 0 || i < len; i++)
@@ -1040,8 +1040,7 @@
 stringprep_ucs4_to_utf8 (const uint32_t * str, ssize_t len,
 			 size_t *items_read, size_t *items_written)
 {
-  return g_ucs4_to_utf8 (str, len, (glong *) items_read,
-			 (glong *) items_written);
+  return g_ucs4_to_utf8 (str, len, items_read, items_written);
 }
 
 /**
