Arrange to export the _PyMalloc_{Malloc, Realloc, Free} entry points.  On
Windows some modules are considered (by me, and I don't care what anyone
else thinks about this <wink>) to be part of "the core" despite that they
happen to be compiled into separate DLLs (the "to DLL or not to DLL?"
question on Windows is nearly arbitrary).  Making the pymalloc entry
points available to them allows the Windows build to complete without
incident when WITH_PYMALLOC is #define'd.

Note that this isn't unprecedented.  Other "private API" functions we
export include _PySequence_IterSearch, _PyEval_SliceIndex, _PyCodec_Lookup,
_Py_ZeroStruct, _Py_TrueStruct, _PyLong_New and _PyModule_Clear.
diff --git a/Include/pymem.h b/Include/pymem.h
index 9592272..10e915f 100644
--- a/Include/pymem.h
+++ b/Include/pymem.h
@@ -92,9 +92,9 @@
 	
 /* pymalloc (private to the interpreter) */
 #ifdef WITH_PYMALLOC
-void *_PyMalloc_Malloc(size_t nbytes);
-void *_PyMalloc_Realloc(void *p, size_t nbytes);
-void _PyMalloc_Free(void *p);
+DL_IMPORT(void *) _PyMalloc_Malloc(size_t nbytes);
+DL_IMPORT(void *) _PyMalloc_Realloc(void *p, size_t nbytes);
+DL_IMPORT(void) _PyMalloc_Free(void *p);
 #define _PyMalloc_MALLOC _PyMalloc_Malloc
 #define _PyMalloc_REALLOC _PyMalloc_Realloc
 #define _PyMalloc_FREE _PyMalloc_Free