diff --git a/Objects/unionobject.c b/Objects/unionobject.c
index e055a55..8cfb2a6 100644
--- a/Objects/unionobject.c
+++ b/Objects/unionobject.c
@@ -202,8 +202,8 @@
         PyTypeObject* arg_type = Py_TYPE(arg);
         if (arg_type == &_Py_UnionType) {
             PyObject* nested_args = ((unionobject*)arg)->args;
-            int nested_arg_length = PyTuple_GET_SIZE(nested_args);
-            for (int j = 0; j < nested_arg_length; j++) {
+            Py_ssize_t nested_arg_length = PyTuple_GET_SIZE(nested_args);
+            for (Py_ssize_t j = 0; j < nested_arg_length; j++) {
                 PyObject* nested_arg = PyTuple_GET_ITEM(nested_args, j);
                 Py_INCREF(nested_arg);
                 PyTuple_SET_ITEM(flattened_args, pos, nested_arg);
@@ -231,7 +231,7 @@
         return NULL;
     }
     // Add unique elements to an array.
-    int added_items = 0;
+    Py_ssize_t added_items = 0;
     for (Py_ssize_t i = 0; i < arg_length; i++) {
         int is_duplicate = 0;
         PyObject* i_element = PyTuple_GET_ITEM(args, i);
