Implemented Martin's suggestion to clear the free lists during the garbage collection of the highest generation.
diff --git a/Doc/c-api/method.rst b/Doc/c-api/method.rst
index f20f14c..c104f89 100644
--- a/Doc/c-api/method.rst
+++ b/Doc/c-api/method.rst
@@ -63,3 +63,10 @@
.. cfunction:: PyObject* PyMethod_GET_SELF(PyObject *meth)
Macro version of :cfunc:`PyMethod_Self` which avoids error checking.
+
+
+.. cfunction:: int PyMethod_ClearFreeList(void)
+
+ Clear the free list. Return the total number of freed items.
+
+ .. versionadded:: 2.6
diff --git a/Doc/c-api/tuple.rst b/Doc/c-api/tuple.rst
index b25adb3..1fcf5fc 100644
--- a/Doc/c-api/tuple.rst
+++ b/Doc/c-api/tuple.rst
@@ -115,3 +115,10 @@
.. versionchanged:: 2.2
Removed unused third parameter, *last_is_sticky*.
+
+
+.. cfunction:: int PyMethod_ClearFreeList(void)
+
+ Clear the free list. Return the total number of freed items.
+
+ .. versionadded:: 2.6
diff --git a/Doc/c-api/unicode.rst b/Doc/c-api/unicode.rst
index 7c570ab..5e5d1a2 100644
--- a/Doc/c-api/unicode.rst
+++ b/Doc/c-api/unicode.rst
@@ -89,6 +89,13 @@
Return a pointer to the internal buffer of the object. *o* has to be a
:ctype:`PyUnicodeObject` (not checked).
+
+.. cfunction:: int PyUnicode_ClearFreeList(void)
+
+ Clear the free list. Return the total number of freed items.
+
+ .. versionadded:: 2.6
+
Unicode provides many different character properties. The most often needed ones
are available through these macros which are mapped to C functions depending on
the Python configuration.