deque is not varsized, so using Py_SIZE is nonsensical (closes #24162)
diff --git a/Modules/_collectionsmodule.c b/Modules/_collectionsmodule.c
index 1924374..5080a5b 100644
--- a/Modules/_collectionsmodule.c
+++ b/Modules/_collectionsmodule.c
@@ -708,7 +708,7 @@
     PyObject *item;
     int rv;
 
-    assert (i >= 0 && i < Py_SIZE(deque));
+    assert (i >= 0 && i < deque->len);
     if (_deque_rotate(deque, -i))
         return -1;
     item = deque_popleft(deque, NULL);