diff --git a/Objects/bytearrayobject.c b/Objects/bytearrayobject.c
index d25144d..18e6f8d 100644
--- a/Objects/bytearrayobject.c
+++ b/Objects/bytearrayobject.c
@@ -761,14 +761,17 @@
     }
 
     /* Is it an int? */
-    count = PyNumber_AsSsize_t(arg, PyExc_ValueError);
-    if (count == -1 && PyErr_Occurred())
-        PyErr_Clear();
-    else {
-        if (count < 0) {
-            PyErr_SetString(PyExc_ValueError, "negative count");
+    count = PyNumber_AsSsize_t(arg, PyExc_OverflowError);
+    if (count == -1 && PyErr_Occurred()) {
+        if (PyErr_ExceptionMatches(PyExc_OverflowError))
             return -1;
-        }
+        PyErr_Clear();
+    }
+    else if (count < 0) {
+        PyErr_SetString(PyExc_ValueError, "negative count");
+        return -1;
+    }
+    else {
         if (count > 0) {
             if (PyByteArray_Resize((PyObject *)self, count))
                 return -1;
diff --git a/Objects/bytesobject.c b/Objects/bytesobject.c
index 6584462..36d71c0 100644
--- a/Objects/bytesobject.c
+++ b/Objects/bytesobject.c
@@ -2949,15 +2949,17 @@
 	}
 
 	/* Is it an int? */
-	size = PyNumber_AsSsize_t(x, PyExc_ValueError);
+	size = PyNumber_AsSsize_t(x, PyExc_OverflowError);
 	if (size == -1 && PyErr_Occurred()) {
+		if (PyErr_ExceptionMatches(PyExc_OverflowError))
+			return NULL;
 		PyErr_Clear();
 	}
+	else if (size < 0) {
+		PyErr_SetString(PyExc_ValueError, "negative count");
+		return NULL;
+	}
 	else {
-		if (size < 0) {
-			PyErr_SetString(PyExc_ValueError, "negative count");
-			return NULL;
-		}
 		new = PyBytes_FromStringAndSize(NULL, size);
 		if (new == NULL) {
 			return NULL;
