staticforward bites the dust.

The staticforward define was needed to support certain broken C
compilers (notably SCO ODT 3.0, perhaps early AIX as well) botched the
static keyword when it was used with a forward declaration of a static
initialized structure.  Standard C allows the forward declaration with
static, and we've decided to stop catering to broken C compilers.  (In
fact, we expect that the compilers are all fixed eight years later.)

I'm leaving staticforward and statichere defined in object.h as
static.  This is only for backwards compatibility with C extensions
that might still use it.

XXX I haven't updated the documentation.
diff --git a/Objects/typeobject.c b/Objects/typeobject.c
index 31a7c3d..9662d95 100644
--- a/Objects/typeobject.c
+++ b/Objects/typeobject.c
@@ -356,7 +356,7 @@
 	return 0;
 }
 
-staticforward PyObject *lookup_maybe(PyObject *, char *, PyObject **);
+static PyObject *lookup_maybe(PyObject *, char *, PyObject **);
 
 static int
 call_finalizer(PyObject *self)
@@ -469,7 +469,7 @@
 	}
 }
 
-staticforward PyTypeObject *solid_base(PyTypeObject *type);
+static PyTypeObject *solid_base(PyTypeObject *type);
 
 /* type test with subclassing support */
 
@@ -894,10 +894,10 @@
 		return base;
 }
 
-staticforward void object_dealloc(PyObject *);
-staticforward int object_init(PyObject *, PyObject *, PyObject *);
-staticforward int update_slot(PyTypeObject *, PyObject *);
-staticforward void fixup_slot_dispatchers(PyTypeObject *);
+static void object_dealloc(PyObject *);
+static int object_init(PyObject *, PyObject *, PyObject *);
+static int update_slot(PyTypeObject *, PyObject *);
+static void fixup_slot_dispatchers(PyTypeObject *);
 
 static PyObject *
 subtype_dict(PyObject *obj, void *context)
@@ -2187,8 +2187,8 @@
 	}
 }
 
-staticforward int add_operators(PyTypeObject *);
-staticforward int add_subclass(PyTypeObject *base, PyTypeObject *type);
+static int add_operators(PyTypeObject *);
+static int add_subclass(PyTypeObject *base, PyTypeObject *type);
 
 int
 PyType_Ready(PyTypeObject *type)
@@ -3118,7 +3118,7 @@
 SLOT1BIN(slot_nb_remainder, nb_remainder, "__mod__", "__rmod__")
 SLOT1BIN(slot_nb_divmod, nb_divmod, "__divmod__", "__rdivmod__")
 
-staticforward PyObject *slot_nb_power(PyObject *, PyObject *, PyObject *);
+static PyObject *slot_nb_power(PyObject *, PyObject *, PyObject *);
 
 SLOT1BINFULL(slot_nb_power_binary, slot_nb_power,
 	     nb_power, "__pow__", "__rpow__")
@@ -4013,8 +4013,8 @@
 	return p;
 }
 
-staticforward int recurse_down_subclasses(PyTypeObject *type,
-					  slotdef **pp, PyObject *name);
+static int recurse_down_subclasses(PyTypeObject *type, slotdef **pp, 
+				   PyObject *name);
 
 /* In the type, update the slots whose slotdefs are gathered in the pp0 array,
    and then do the same for all this type's subtypes. */