Renamed Grandly
diff --git a/Modules/cmathmodule.c b/Modules/cmathmodule.c
index 4e1715c..94d6ce8 100644
--- a/Modules/cmathmodule.c
+++ b/Modules/cmathmodule.c
@@ -2,8 +2,7 @@
 
 /* much code borrowed from mathmodule.c */
 
-#include "allobjects.h"
-#include "complexobject.h"
+#include "Python.h"
 
 #include <errno.h>
 
@@ -229,22 +228,22 @@
 
 /* And now the glue to make them available from Python: */
 
-static object *
+static PyObject *
 math_error()
 {
 	if (errno == EDOM)
-		err_setstr(ValueError, "math domain error");
+		PyErr_SetString(PyExc_ValueError, "math domain error");
 	else if (errno == ERANGE)
-		err_setstr(OverflowError, "math range error");
-	else
-		err_errno(ValueError); /* Unexpected math error */
+		PyErr_SetString(PyExc_OverflowError, "math range error");
+	else    /* Unexpected math error */
+		PyErr_SetFromErrno(PyExc_ValueError); 
 	return NULL;
 }
 
-static object *
+static PyObject *
 math_1(args, func)
-	object *args;
-	Py_complex (*func) FPROTO((Py_complex));
+	PyObject *args;
+	Py_complex (*func) Py_FPROTO((Py_complex));
 {
 	Py_complex x;
 	if (!PyArg_ParseTuple(args, "D", &x))
@@ -256,11 +255,11 @@
 	if (errno != 0)
 		return math_error();
 	else
-		return newcomplexobject(x);
+		return PyComplex_FromCComplex(x);
 }
 
 #define FUNC1(stubname, func) \
-	static object * stubname(self, args) object *self, *args; { \
+	static PyObject * stubname(self, args) PyObject *self, *args; { \
 		return math_1(args, func); \
 	}
 
@@ -282,7 +281,7 @@
 FUNC1(cmath_tanh, c_tanh)
 
 
-static struct methodlist cmath_methods[] = {
+static PyMethodDef cmath_methods[] = {
 	{"acos", cmath_acos, 1},
 	{"acosh", cmath_acosh, 1},
 	{"asin", cmath_asin, 1},
@@ -305,12 +304,13 @@
 void
 initcmath()
 {
-	object *m, *d, *v;
+	PyObject *m, *d, *v;
 	
 	m = Py_InitModule("cmath", cmath_methods);
-	d = getmoduledict(m);
-	dictinsert(d, "pi", v = newfloatobject(atan(1.0) * 4.0));
-	DECREF(v);
-	dictinsert(d, "e", v = newfloatobject(exp(1.0)));
-	DECREF(v);
+	d = PyModule_GetDict(m);
+	PyDict_SetItemString(d, "pi",
+			     v = PyFloat_FromDouble(atan(1.0) * 4.0));
+	Py_DECREF(v);
+	PyDict_SetItemString(d, "e", v = PyFloat_FromDouble(exp(1.0)));
+	Py_DECREF(v);
 }