diff --git a/ares/ares_init.c b/ares/ares_init.c
index 70f455361dcea705b3d4b51e12d4ecfce9755c46..519d9552474898ed4c354f56b4f8a7b875413fd2 100644
--- a/ares/ares_init.c
+++ b/ares/ares_init.c
@@ -669,7 +669,7 @@ static int config_sortlist(struct apattern **sortlist, int *nsort,
 	      str = q + 1;
 	      while (*q && *q != ';' && !isspace((unsigned char)*q))
 		q++;
-	      if (ip_addr(str, q - str, &pat.mask) != 0)
+	      if (ip_addr(str, (int)(q - str), &pat.mask) != 0)
 		natural_mask(&pat);
 	    }
 	  else
@@ -783,9 +783,7 @@ static char *try_config(char *s, const char *opt)
 
 static const char *try_option(const char *p, const char *q, const char *opt)
 {
-  int len;
-
-  len = strlen(opt);
+  size_t len = strlen(opt);
   return (q - p > len && strncmp(p, opt, len) == 0) ? p + len : NULL;
 }