Charles G Waldman: Doing a PyObject_New then PyMem_DEL causes havoc if
you are trying to use Py_TRACE_REFS.
diff --git a/Modules/pcremodule.c b/Modules/pcremodule.c
index f44726e..4d2aa72 100644
--- a/Modules/pcremodule.c
+++ b/Modules/pcremodule.c
@@ -204,7 +204,7 @@
 				 &error, &erroroffset, dictionary);
 	if (rv->regex==NULL) 
 	{
-		PyMem_DEL(rv);
+		Py_DECREF(rv);
 		if (!PyErr_Occurred())
 		{
 			PyObject *errval = Py_BuildValue("si", error, erroroffset);
@@ -217,7 +217,7 @@
 	if (rv->regex_extra==NULL && error!=NULL) 
 	{
 		PyObject *errval = Py_BuildValue("si", error, 0);
-		PyMem_DEL(rv);
+		Py_DECREF(rv);
 		PyErr_SetObject(ErrorObject, errval);
 		Py_XDECREF(errval);
 		return NULL;
@@ -228,7 +228,7 @@
 		PyObject *errval = Py_BuildValue("si", error, rv->num_groups);
 		PyErr_SetObject(ErrorObject, errval);
 		Py_XDECREF(errval);
-		PyMem_DEL(rv);
+		Py_DECREF(rv);
 		return NULL;
 	}
 	return (PyObject *)rv;