Silenced some warnings about comparison between signed and unsigned integer
expressions.
diff --git a/Parser/node.c b/Parser/node.c
index 564bd91..0010324 100644
--- a/Parser/node.c
+++ b/Parser/node.c
@@ -70,8 +70,8 @@
  * Note that this would be straightforward if a node stored its current
  * capacity.  The code is tricky to avoid that.
  */
-#define XXXROUNDUP(n) ((n) <= 1 ? (n) :                 \
-               (n) <= 128 ? _Py_SIZE_ROUND_UP((n), 4) : \
+#define XXXROUNDUP(n) ((n) <= 1 ? (n) :                         \
+               (n) <= 128 ? (int)_Py_SIZE_ROUND_UP((n), 4) :    \
                fancy_roundup(n))
 
 
diff --git a/Parser/pgenmain.c b/Parser/pgenmain.c
index 017a4f9..0f055d6 100644
--- a/Parser/pgenmain.c
+++ b/Parser/pgenmain.c
@@ -96,10 +96,11 @@
         fprintf(stderr, "Parsing error %d, line %d.\n",
             err.error, err.lineno);
         if (err.text != NULL) {
-            size_t i;
+            size_t len;
+            int i;
             fprintf(stderr, "%s", err.text);
-            i = strlen(err.text);
-            if (i == 0 || err.text[i-1] != '\n')
+            len = strlen(err.text);
+            if (len == 0 || err.text[len-1] != '\n')
                 fprintf(stderr, "\n");
             for (i = 0; i < err.offset; i++) {
                 if (err.text[i] == '\t')
diff --git a/Parser/printgrammar.c b/Parser/printgrammar.c
index dd7e6ae..7311e55 100644
--- a/Parser/printgrammar.c
+++ b/Parser/printgrammar.c
@@ -84,7 +84,7 @@
 printdfas(grammar *g, FILE *fp)
 {
     dfa *d;
-    int i, j;
+    int i, j, n;
 
     printstates(g, fp);
     fprintf(fp, "static dfa dfas[%d] = {\n", g->g_ndfas);
@@ -93,7 +93,8 @@
         fprintf(fp, "    {%d, \"%s\", %d, %d, states_%d,\n",
             d->d_type, d->d_name, d->d_initial, d->d_nstates, i);
         fprintf(fp, "     \"");
-        for (j = 0; j < NBYTES(g->g_ll.ll_nlabels); j++)
+        n = NBYTES(g->g_ll.ll_nlabels);
+        for (j = 0; j < n; j++)
             fprintf(fp, "\\%03o", d->d_first[j] & 0xff);
         fprintf(fp, "\"},\n");
     }