All calls to getarrayitem() (which is static) are done either in loops
over the size of the array, or the callers check the index bounds themselves,
so the index check never failed => Replace it with an assert().
diff --git a/Modules/arraymodule.c b/Modules/arraymodule.c
index dcb66cf..f730915 100644
--- a/Modules/arraymodule.c
+++ b/Modules/arraymodule.c
@@ -447,10 +447,7 @@
 	register arrayobject *ap;
 	assert(array_Check(op));
 	ap = (arrayobject *)op;
-	if (i < 0 || i >= ap->ob_size) {
-		PyErr_SetString(PyExc_IndexError, "array index out of range");
-		return NULL;
-	}
+	assert(i>=0 && i<ap->ob_size);
 	return (*ap->ob_descr->getitem)(ap, i);
 }