Change PyUnicode_EncodeUTF7() to return a bytes object.
diff --git a/Objects/unicodeobject.c b/Objects/unicodeobject.c
index aed07ee..af98a90 100644
--- a/Objects/unicodeobject.c
+++ b/Objects/unicodeobject.c
@@ -1149,13 +1149,13 @@
     char * start;
 
     if (size == 0)
-		return PyString_FromStringAndSize(NULL, 0);
+	return PyBytes_FromStringAndSize(NULL, 0);
 
-    v = PyString_FromStringAndSize(NULL, cbAllocated);
+    v = PyBytes_FromStringAndSize(NULL, cbAllocated);
     if (v == NULL)
         return NULL;
 
-    start = out = PyString_AS_STRING(v);
+    start = out = PyBytes_AS_STRING(v);
     for (;i < size; ++i) {
         Py_UNICODE ch = s[i];
 
@@ -1221,7 +1221,10 @@
         *out++ = '-';
     }
 
-    _PyString_Resize(&v, out - start);
+    if (PyBytes_Resize(v, out - start)) {
+        Py_DECREF(v);
+        return NULL;
+    }
     return v;
 }