Use a type flag to determine the applicability of the tp_weaklistoffset
field.  This should avoid binary incompatibility problems with older modules
that have not been recompiled.
diff --git a/Include/object.h b/Include/object.h
index 972e05b..2f683eb 100644
--- a/Include/object.h
+++ b/Include/object.h
@@ -344,11 +344,18 @@
 
 #define Py_TPFLAGS_HAVE_RICHCOMPARE (1L<<5)
 
+/* Objects which are weakly referencable if their tp_weaklistoffset is >0 */
+/* XXX Should this have the same value as Py_TPFLAGS_HAVE_RICHCOMPARE?
+ * These both indicate a feature that appeared in the same alpha release.
+ */
+#define Py_TPFLAGS_HAVE_WEAKREFS (1L<<6)
+
 #define Py_TPFLAGS_DEFAULT  ( \
                              Py_TPFLAGS_HAVE_GETCHARBUFFER | \
                              Py_TPFLAGS_HAVE_SEQUENCE_IN | \
                              Py_TPFLAGS_HAVE_INPLACEOPS | \
                              Py_TPFLAGS_HAVE_RICHCOMPARE | \
+                             Py_TPFLAGS_HAVE_WEAKREFS | \
                             0)
 
 #define PyType_HasFeature(t,f)  (((t)->tp_flags & (f)) != 0)