replace PyXXX_Length calls with PyXXX_Size calls
diff --git a/Modules/_sre.c b/Modules/_sre.c
index 2ab1703..5beb3ea 100644
--- a/Modules/_sre.c
+++ b/Modules/_sre.c
@@ -1127,7 +1127,7 @@
 	if (!code)
 		return NULL;
 
-    n = PySequence_Length(code);
+    n = PySequence_Size(code);
 
 	self = PyObject_NEW_VAR(PatternObject, &Pattern_Type, 100*n);
 	if (!self) {
diff --git a/Modules/_tkinter.c b/Modules/_tkinter.c
index 6be3e04..8fb321e 100644
--- a/Modules/_tkinter.c
+++ b/Modules/_tkinter.c
@@ -1934,7 +1934,7 @@
 	if (!PyArg_ParseTuple(args, "O:_flatten", &item))
 		return NULL;
 
-	context.maxsize = PySequence_Length(item);
+	context.maxsize = PySequence_Size(item);
 	if (context.maxsize <= 0)
 		return PyTuple_New(0);
 	
diff --git a/Modules/almodule.c b/Modules/almodule.c
index d9dfc81..84a9895 100644
--- a/Modules/almodule.c
+++ b/Modules/almodule.c
@@ -176,13 +176,13 @@
 		case AL_INT32_ELEM:
 		case AL_RESOURCE_ELEM:
 		case AL_ENUM_ELEM:
-			param->sizeIn = PySequence_Length(value);
+			param->sizeIn = PySequence_Size(value);
 			param->value.ptr = PyMem_NEW(int, param->sizeIn);
 			stepsize = sizeof(int);
 			break;
 		case AL_INT64_ELEM:
 		case AL_FIXED_ELEM:
-			param->sizeIn = PySequence_Length(value);
+			param->sizeIn = PySequence_Size(value);
 			param->value.ptr = PyMem_NEW(long long, param->sizeIn);
 			stepsize = sizeof(long long);
 			break;
diff --git a/Modules/cPickle.c b/Modules/cPickle.c
index f9ef78f..52b3a1f 100644
--- a/Modules/cPickle.c
+++ b/Modules/cPickle.c
@@ -1466,7 +1466,7 @@
             PyObject_CallObject(getinitargs_func, empty_tuple))
             goto finally;
 
-        if ((len = PyObject_Length(class_args)) < 0)  
+        if ((len = PyObject_Size(class_args)) < 0)  
             goto finally;
 
         for (i = 0; i < len; i++) {
@@ -2874,7 +2874,7 @@
   if (PyClass_Check(cls)) {
       int l;
       
-      if ((l=PyObject_Length(args)) < 0) goto err;
+      if ((l=PyObject_Size(args)) < 0) goto err;
       UNLESS (l) {
           PyObject *__getinitargs__;
 
diff --git a/Modules/cStringIO.c b/Modules/cStringIO.c
index 4c187fe..321e79b 100644
--- a/Modules/cStringIO.c
+++ b/Modules/cStringIO.c
@@ -367,7 +367,7 @@
     Py_DECREF(string_module);
   }
 
-  if (PyObject_Length(args) == -1) {
+  if (PyObject_Size(args) == -1) {
     return NULL;
   }
 
diff --git a/Modules/parsermodule.c b/Modules/parsermodule.c
index feea8da..27203c3 100644
--- a/Modules/parsermodule.c
+++ b/Modules/parsermodule.c
@@ -610,7 +610,7 @@
      *  so we can DECREF it after the check.  But we really should accept
      *  lists as well as tuples at the very least.
      */
-    ok = PyObject_Length(tuple) >= 2;
+    ok = PyObject_Size(tuple) >= 2;
     if (ok) {
         temp = PySequence_GetItem(tuple, 0);
         ok = (temp != NULL) && PyInt_Check(temp);
@@ -626,7 +626,7 @@
     }
     if (ok) {
         temp = PySequence_GetItem(tuple, 1);
-        ok = (temp != NULL) && PyObject_Length(temp) >= 2;
+        ok = (temp != NULL) && PyObject_Size(temp) >= 2;
         if (ok) {
             PyObject *temp2 = PySequence_GetItem(temp, 0);
             if (temp2 != NULL) {
@@ -693,7 +693,7 @@
 static int
 check_terminal_tuple(PyObject *elem)
 {
-    int   len = PyObject_Length(elem);
+    int   len = PyObject_Size(elem);
     int   res = 1;
     char* str = "Illegal terminal symbol; bad node length.";
 
@@ -731,7 +731,7 @@
 static node*
 build_node_children(PyObject *tuple, node *root, int *line_num)
 {
-    int len = PyObject_Length(tuple);
+    int len = PyObject_Size(tuple);
     int i;
 
     for (i = 1; i < len; ++i) {
@@ -771,7 +771,7 @@
                     (void) strcpy(strn, PyString_AS_STRING(temp));
                 Py_DECREF(temp);
 
-                if (PyObject_Length(elem) == 3) {
+                if (PyObject_Size(elem) == 3) {
                     PyObject* temp = PySequence_GetItem(elem, 2);
                     *line_num = PyInt_AsLong(temp);
                     Py_DECREF(temp);
diff --git a/Modules/posixmodule.c b/Modules/posixmodule.c
index c0b30f9..d879837 100644
--- a/Modules/posixmodule.c
+++ b/Modules/posixmodule.c
@@ -1417,7 +1417,7 @@
 	}
 	argvlist[argc] = NULL;
 
-	i = PyMapping_Length(env);
+	i = PyMapping_Size(env);
 	envlist = PyMem_NEW(char *, i + 1);
 	if (envlist == NULL) {
 		PyErr_NoMemory();
@@ -1610,7 +1610,7 @@
 	}
 	argvlist[argc] = NULL;
 
-	i = PyMapping_Length(env);
+	i = PyMapping_Size(env);
 	envlist = PyMem_NEW(char *, i + 1);
 	if (envlist == NULL) {
 		PyErr_NoMemory();
diff --git a/Modules/stropmodule.c b/Modules/stropmodule.c
index 35674de..612d0d3 100644
--- a/Modules/stropmodule.c
+++ b/Modules/stropmodule.c
@@ -190,7 +190,7 @@
 		seplen = 1;
 	}
 
-	seqlen = PySequence_Length(seq);
+	seqlen = PySequence_Size(seq);
 	if (seqlen < 0 && PyErr_Occurred())
 		return NULL;
 
diff --git a/Objects/listobject.c b/Objects/listobject.c
index 9c49dad..e85e2f4 100644
--- a/Objects/listobject.c
+++ b/Objects/listobject.c
@@ -563,7 +563,7 @@
 	if (!b)
 		return NULL;
 
-	if (PyObject_Length(b) == 0)
+	if (PyObject_Size(b) == 0)
 		/* short circuit when b is empty */
 		goto ok;
 
@@ -585,7 +585,7 @@
 		}
 	}
 
-	blen = PyObject_Length(b);
+	blen = PyObject_Size(b);
 
 	/* resize a using idiom */
 	items = self->ob_item;
diff --git a/Objects/stringobject.c b/Objects/stringobject.c
index f4b90e8..ab44e91 100644
--- a/Objects/stringobject.c
+++ b/Objects/stringobject.c
@@ -759,7 +759,7 @@
 	/* From here on out, errors go through finally: for proper
 	 * reference count manipulations.
 	 */
-	seqlen = PySequence_Length(seq);
+	seqlen = PySequence_Size(seq);
 	if (seqlen == 1) {
 		item = PySequence_Fast_GET_ITEM(seq, 0);
 		Py_INCREF(item);
diff --git a/Objects/unicodeobject.c b/Objects/unicodeobject.c
index f10b800..02d1b0d 100644
--- a/Objects/unicodeobject.c
+++ b/Objects/unicodeobject.c
@@ -2650,7 +2650,7 @@
     int sz = 100;
     int i;
 
-    seqlen = PySequence_Length(seq);
+    seqlen = PySequence_Size(seq);
     if (seqlen < 0 && PyErr_Occurred())
 	return NULL;
 
diff --git a/Python/bltinmodule.c b/Python/bltinmodule.c
index a00cd5d..0746282 100644
--- a/Python/bltinmodule.c
+++ b/Python/bltinmodule.c
@@ -1385,7 +1385,7 @@
 
 	if (!PyArg_ParseTuple(args, "O:len", &v))
 		return NULL;
-	res = PyObject_Length(v);
+	res = PyObject_Size(v);
 	if (res < 0 && PyErr_Occurred())
 		return NULL;
 	return PyInt_FromLong(res);
diff --git a/Python/exceptions.c b/Python/exceptions.c
index c0e4d54..05e318e 100644
--- a/Python/exceptions.c
+++ b/Python/exceptions.c
@@ -224,7 +224,8 @@
 	return NULL;
 
     /* set args attribute */
-    args = PySequence_GetSlice(args, 1, PySequence_Length(args));
+    /* XXX size is only a hint */
+    args = PySequence_GetSlice(args, 1, PySequence_Size(args));
     if (!args)
         return NULL;
     status = PyObject_SetAttrString(self, "args", args);
@@ -249,7 +250,7 @@
     if (!args)
         return NULL;
 
-    switch (PySequence_Length(args)) {
+    switch (PySequence_Size(args)) {
     case 0:
         out = PyString_FromString("");
         break;
@@ -374,7 +375,7 @@
 	return NULL;
 
     /* Set args attribute. */
-    if (!(args = PySequence_GetSlice(args, 1, PySequence_Length(args))))
+    if (!(args = PySequence_GetSlice(args, 1, PySequence_Size(args))))
         return NULL;
     
     status = PyObject_SetAttrString(self, "args", args);
@@ -384,7 +385,7 @@
     }
 
     /* set code attribute */
-    switch (PySequence_Length(args)) {
+    switch (PySequence_Size(args)) {
     case 0:
         Py_INCREF(Py_None);
         code = Py_None;
@@ -441,7 +442,7 @@
     if (!(self = get_self(args)))
 	return NULL;
 
-    if (!(args = PySequence_GetSlice(args, 1, PySequence_Length(args))))
+    if (!(args = PySequence_GetSlice(args, 1, PySequence_Size(args))))
 	return NULL;
 
     if (PyObject_SetAttrString(self, "args", args) ||
@@ -452,7 +453,7 @@
 	goto finally;
     }
 
-    switch (PySequence_Length(args)) {
+    switch (PySequence_Size(args)) {
     case 3:
 	/* Where a function has a single filename, such as open() or some
 	 * of the os module functions, PyErr_SetFromErrnoWithFilename() is
@@ -671,13 +672,13 @@
     if (!(self = get_self(args)))
 	return NULL;
 
-    if (!(args = PySequence_GetSlice(args, 1, PySequence_Length(args))))
+    if (!(args = PySequence_GetSlice(args, 1, PySequence_Size(args))))
 	return NULL;
 
     if (PyObject_SetAttrString(self, "args", args))
 	goto finally;
 
-    lenargs = PySequence_Length(args);
+    lenargs = PySequence_Size(args);
     if (lenargs >= 1) {
 	PyObject* item0 = PySequence_GetItem(args, 0);
 	int status;
diff --git a/Python/getargs.c b/Python/getargs.c
index ba855af..11754ef 100644
--- a/Python/getargs.c
+++ b/Python/getargs.c
@@ -348,7 +348,7 @@
 		return msgbuf;
 	}
 	
-	if ((i = PySequence_Length(arg)) != n) {
+	if ((i = PySequence_Size(arg)) != n) {
 		levels[0] = 0;
 		sprintf(msgbuf,
 		    toplevel ? "%d arguments, %d" : "%d-sequence, %d-sequence",