Fixed compiler warnings in compact dict implementation on 32-bit platforms.
diff --git a/Objects/dictobject.c b/Objects/dictobject.c
index 91a4e7d..4bcc3db 100644
--- a/Objects/dictobject.c
+++ b/Objects/dictobject.c
@@ -326,16 +326,16 @@
         int16_t *indices = keys->dk_indices.as_2;
         ix = indices[i];
     }
-    else if (s <= 0xffffffff) {
-        int32_t *indices = keys->dk_indices.as_4;
-        ix = indices[i];
-    }
 #if SIZEOF_VOID_P > 4
-    else {
+    else if (s > 0xffffffff) {
         int64_t *indices = keys->dk_indices.as_8;
         ix = indices[i];
     }
 #endif
+    else {
+        int32_t *indices = keys->dk_indices.as_4;
+        ix = indices[i];
+    }
     assert(ix >= DKIX_DUMMY);
     return ix;
 }
@@ -358,17 +358,17 @@
         assert(ix <= 0x7fff);
         indices[i] = (int16_t)ix;
     }
-    else if (s <= 0xffffffff) {
-        int32_t *indices = keys->dk_indices.as_4;
-        assert(ix <= 0x7fffffff);
-        indices[i] = (int32_t)ix;
-    }
 #if SIZEOF_VOID_P > 4
-    else {
+    else if (s > 0xffffffff) {
         int64_t *indices = keys->dk_indices.as_8;
         indices[i] = ix;
     }
 #endif
+    else {
+        int32_t *indices = keys->dk_indices.as_4;
+        assert(ix <= 0x7fffffff);
+        indices[i] = (int32_t)ix;
+    }
 }