diff --git a/Python/exceptions.c b/Python/exceptions.c
index 0080694..f8e330f 100644
--- a/Python/exceptions.c
+++ b/Python/exceptions.c
@@ -1227,7 +1227,6 @@
 {
     PyObject *encodingObj = NULL;
     PyObject *objectObj = NULL;
-    int length;
     int start;
     int end;
     PyObject *reasonObj = NULL;
@@ -1242,8 +1241,6 @@
     if (!(objectObj = PyUnicodeEncodeError_GetObject(self)))
 	goto error;
 
-    length = PyUnicode_GET_SIZE(objectObj);
-
     if (PyUnicodeEncodeError_GetStart(self, &start))
 	goto error;
 
@@ -1307,7 +1304,6 @@
 {
     PyObject *encodingObj = NULL;
     PyObject *objectObj = NULL;
-    int length;
     int start;
     int end;
     PyObject *reasonObj = NULL;
@@ -1322,8 +1318,6 @@
     if (!(objectObj = PyUnicodeDecodeError_GetObject(self)))
 	goto error;
 
-    length = PyString_GET_SIZE(objectObj);
-
     if (PyUnicodeDecodeError_GetStart(self, &start))
 	goto error;
 
@@ -1423,7 +1417,6 @@
 UnicodeTranslateError__str__(PyObject *self, PyObject *arg)
 {
     PyObject *objectObj = NULL;
-    int length;
     int start;
     int end;
     PyObject *reasonObj = NULL;
@@ -1435,8 +1428,6 @@
     if (!(objectObj = PyUnicodeTranslateError_GetObject(self)))
 	goto error;
 
-    length = PyUnicode_GET_SIZE(objectObj);
-
     if (PyUnicodeTranslateError_GetStart(self, &start))
 	goto error;
 
