Removed WITH_CYCLE_GC #ifdef-ery.  Holes:

+ I'm not sure what to do about configure.in.  Left it alone.

+ Ditto pyexpat.c.  Fred or Martin will know what to do.
diff --git a/Include/Python.h b/Include/Python.h
index ff21ad1..d4afdaf 100644
--- a/Include/Python.h
+++ b/Include/Python.h
@@ -23,6 +23,14 @@
 #include "patchlevel.h"
 #include "pyconfig.h"
 
+/* Cyclic gc is always enabled, starting with release 2.3a1.  Supply the
+ * old symbol for the benefit of extension modules written before then
+ * that may be conditionalizing on it.  The core doesn't use it anymore.
+ */
+#ifndef WITH_CYCLE_GC
+#define WITH_CYCLE_GC 1
+#endif
+
 #ifdef HAVE_LIMITS_H
 #include <limits.h>
 #endif
diff --git a/Include/object.h b/Include/object.h
index a742fd8..7bb1eac 100644
--- a/Include/object.h
+++ b/Include/object.h
@@ -441,11 +441,7 @@
 #define Py_TPFLAGS_READYING (1L<<13)
 
 /* Objects support garbage collection (see objimp.h) */
-#ifdef WITH_CYCLE_GC
 #define Py_TPFLAGS_HAVE_GC (1L<<14)
-#else
-#define Py_TPFLAGS_HAVE_GC 0
-#endif
 
 #define Py_TPFLAGS_DEFAULT  ( \
                              Py_TPFLAGS_HAVE_GETCHARBUFFER | \
diff --git a/Include/objimpl.h b/Include/objimpl.h
index 3a7488a..730b032 100644
--- a/Include/objimpl.h
+++ b/Include/objimpl.h
@@ -226,10 +226,6 @@
 /*
  * Garbage Collection Support
  * ==========================
- *
- * Some of the functions and macros below are always defined; when
- * WITH_CYCLE_GC is undefined, they simply don't do anything different
- * than their non-GC counterparts.
  */
 
 /* Test if a type has a GC head */
@@ -246,8 +242,6 @@
 /* for source compatibility with 2.2 */
 #define _PyObject_GC_Del PyObject_GC_Del
 
-#ifdef WITH_CYCLE_GC
-
 /* GC information is stored BEFORE the object structure. */
 typedef union _gc_head {
 	struct {
@@ -305,19 +299,6 @@
 		( (type *) _PyObject_GC_NewVar((typeobj), (n)) )
 
 
-#else /* !WITH_CYCLE_GC */
-
-#define _PyObject_GC_Malloc	PyObject_Malloc
-#define PyObject_GC_New		PyObject_New
-#define PyObject_GC_NewVar	PyObject_NewVar
-#define PyObject_GC_Del		PyObject_Del
-#define _PyObject_GC_TRACK(op)
-#define _PyObject_GC_UNTRACK(op)
-#define PyObject_GC_Track(op)
-#define PyObject_GC_UnTrack(op)
-
-#endif
-
 /* This is here for the sake of backwards compatibility.  Extensions that
  * use the old GC API will still compile but the objects will not be
  * tracked by the GC. */