Use 'void' directly instead of the ANY #define, now that all code is ANSI C.
Leave the actual #define in for API compatibility.
diff --git a/Include/ceval.h b/Include/ceval.h
index 9468451..0831173 100644
--- a/Include/ceval.h
+++ b/Include/ceval.h
@@ -40,7 +40,7 @@
 
 DL_IMPORT(int) Py_FlushLine(void);
 
-DL_IMPORT(int) Py_AddPendingCall(int (*func)(ANY *), ANY *arg);
+DL_IMPORT(int) Py_AddPendingCall(int (*func)(void *), void *arg);
 DL_IMPORT(int) Py_MakePendingCalls(void);
 
 
diff --git a/Include/mymalloc.h b/Include/mymalloc.h
index 88faf90..5bbd1e5 100644
--- a/Include/mymalloc.h
+++ b/Include/mymalloc.h
@@ -12,25 +12,7 @@
 
 /* Lowest-level memory allocation interface */
 
-#ifdef macintosh
-#define ANY void
-#endif
-
-#ifdef __STDC__
-#define ANY void
-#endif
-
-#ifdef __TURBOC__
-#define ANY void
-#endif
-
-#ifdef __GNUC__
-#define ANY void
-#endif
-
-#ifndef ANY
-#define ANY char
-#endif
+#define ANY void /* For API compatibility only. Obsolete, do not use. */
 
 #ifdef HAVE_STDLIB_H
 #include <stdlib.h>
@@ -49,7 +31,7 @@
 #endif
 
 #ifndef NULL
-#define NULL ((ANY *)0)
+#define NULL ((void *)0)
 #endif
 
 #ifdef MALLOC_ZERO_RETURNS_NULL
@@ -87,13 +69,13 @@
 #undef PyCore_REALLOC_PROTO
 #undef PyCore_FREE_PROTO
 #define PyCore_MALLOC_PROTO    (size_t)
-#define PyCore_REALLOC_PROTO   (ANY *, size_t)
-#define PyCore_FREE_PROTO      (ANY *)
+#define PyCore_REALLOC_PROTO   (void *, size_t)
+#define PyCore_FREE_PROTO      (void *)
 #endif
 
 #ifdef NEED_TO_DECLARE_MALLOC_AND_FRIEND
-extern ANY *PyCore_MALLOC_FUNC PyCore_MALLOC_PROTO;
-extern ANY *PyCore_REALLOC_FUNC PyCore_REALLOC_PROTO;
+extern void *PyCore_MALLOC_FUNC PyCore_MALLOC_PROTO;
+extern void *PyCore_REALLOC_FUNC PyCore_REALLOC_PROTO;
 extern void PyCore_FREE_FUNC PyCore_FREE_PROTO;
 #endif
 
@@ -134,17 +116,17 @@
    returns a non-NULL pointer, even if the underlying malloc
    doesn't. Returned pointers must be checked for NULL explicitly.
    No action is performed on failure. */
-extern DL_IMPORT(ANY *) PyMem_Malloc(size_t);
-extern DL_IMPORT(ANY *) PyMem_Realloc(ANY *, size_t);
-extern DL_IMPORT(void) PyMem_Free(ANY *);
+extern DL_IMPORT(void *) PyMem_Malloc(size_t);
+extern DL_IMPORT(void *) PyMem_Realloc(void *, size_t);
+extern DL_IMPORT(void) PyMem_Free(void *);
 
 /* Starting from Python 1.6, the wrappers Py_{Malloc,Realloc,Free} are
    no longer supported. They used to call PyErr_NoMemory() on failure. */
 
 /* Macros */
 #define PyMem_MALLOC(n)         PyCore_MALLOC(n)
-#define PyMem_REALLOC(p, n)     PyCore_REALLOC((ANY *)(p), (n))
-#define PyMem_FREE(p)           PyCore_FREE((ANY *)(p))
+#define PyMem_REALLOC(p, n)     PyCore_REALLOC((void *)(p), (n))
+#define PyMem_FREE(p)           PyCore_FREE((void *)(p))
 
 /*
  * Type-oriented memory interface
diff --git a/Include/objimpl.h b/Include/objimpl.h
index 76fab92..dfdbca0 100644
--- a/Include/objimpl.h
+++ b/Include/objimpl.h
@@ -101,8 +101,8 @@
 #endif
 
 #ifdef NEED_TO_DECLARE_OBJECT_MALLOC_AND_FRIEND
-extern ANY *PyCore_OBJECT_MALLOC_FUNC PyCore_OBJECT_MALLOC_PROTO;
-extern ANY *PyCore_OBJECT_REALLOC_FUNC PyCore_OBJECT_REALLOC_PROTO;
+extern void *PyCore_OBJECT_MALLOC_FUNC PyCore_OBJECT_MALLOC_PROTO;
+extern void *PyCore_OBJECT_REALLOC_FUNC PyCore_OBJECT_REALLOC_PROTO;
 extern void PyCore_OBJECT_FREE_FUNC PyCore_OBJECT_FREE_PROTO;
 #endif
 
@@ -137,14 +137,14 @@
    as Python. These wrappers *do not* make sure that allocating 0
    bytes returns a non-NULL pointer. Returned pointers must be checked
    for NULL explicitly; no action is performed on failure. */
-extern DL_IMPORT(ANY *) PyObject_Malloc(size_t);
-extern DL_IMPORT(ANY *) PyObject_Realloc(ANY *, size_t);
-extern DL_IMPORT(void) PyObject_Free(ANY *);
+extern DL_IMPORT(void *) PyObject_Malloc(size_t);
+extern DL_IMPORT(void *) PyObject_Realloc(void *, size_t);
+extern DL_IMPORT(void) PyObject_Free(void *);
 
 /* Macros */
 #define PyObject_MALLOC(n)           PyCore_OBJECT_MALLOC(n)
-#define PyObject_REALLOC(op, n)      PyCore_OBJECT_REALLOC((ANY *)(op), (n))
-#define PyObject_FREE(op)            PyCore_OBJECT_FREE((ANY *)(op))
+#define PyObject_REALLOC(op, n)      PyCore_OBJECT_REALLOC((void *)(op), (n))
+#define PyObject_FREE(op)            PyCore_OBJECT_FREE((void *)(op))
 
 /*
  * Generic object allocator interface
diff --git a/Modules/dlmodule.c b/Modules/dlmodule.c
index 09bd9d3..18e1458 100644
--- a/Modules/dlmodule.c
+++ b/Modules/dlmodule.c
@@ -18,7 +18,7 @@
 #define RTLD_LAZY 1
 #endif
 
-typedef ANY *PyUnivPtr;
+typedef void *PyUnivPtr;
 typedef struct {
 	PyObject_HEAD
 	PyUnivPtr *dl_handle;
diff --git a/Modules/signalmodule.c b/Modules/signalmodule.c
index f200427..4829dbf 100644
--- a/Modules/signalmodule.c
+++ b/Modules/signalmodule.c
@@ -633,7 +633,7 @@
 {
 	is_tripped++;
 	Handlers[SIGINT].tripped = 1;
-	Py_AddPendingCall((int (*)(ANY *))PyErr_CheckSignals, NULL);
+	Py_AddPendingCall((int (*)(void *))PyErr_CheckSignals, NULL);
 }
 
 void
diff --git a/Modules/socketmodule.c b/Modules/socketmodule.c
index e95e339..f146e8f 100644
--- a/Modules/socketmodule.c
+++ b/Modules/socketmodule.c
@@ -799,7 +799,7 @@
 				      &level, &optname, &buf, &buflen))
 			return NULL;
 	}
-	res = setsockopt(s->sock_fd, level, optname, (ANY *)buf, buflen);
+	res = setsockopt(s->sock_fd, level, optname, (void *)buf, buflen);
 	if (res < 0)
 		return PySocket_Err();
 	Py_INCREF(Py_None);
@@ -841,7 +841,7 @@
 		int flag = 0;
 		socklen_t flagsize = sizeof flag;
 		res = getsockopt(s->sock_fd, level, optname,
-				 (ANY *)&flag, &flagsize);
+				 (void *)&flag, &flagsize);
 		if (res < 0)
 			return PySocket_Err();
 		return PyInt_FromLong(flag);
@@ -855,7 +855,7 @@
 	if (buf == NULL)
 		return NULL;
 	res = getsockopt(s->sock_fd, level, optname,
-			 (ANY *)PyString_AsString(buf), &buflen);
+			 (void *)PyString_AsString(buf), &buflen);
 	if (res < 0) {
 		Py_DECREF(buf);
 		return PySocket_Err();
@@ -1230,7 +1230,7 @@
 #if defined(PYOS_OS2)
 		     (struct sockaddr *)addrbuf, &addrlen
 #else
-		     (ANY *)addrbuf, &addrlen
+		     (void *)addrbuf, &addrlen
 #endif
 #else
 		     (struct sockaddr *)addrbuf, &addrlen
diff --git a/Modules/timemodule.c b/Modules/timemodule.c
index 18223b2..4d2089c 100644
--- a/Modules/timemodule.c
+++ b/Modules/timemodule.c
@@ -293,7 +293,7 @@
 gettmarg(PyObject *args, struct tm *p)
 {
 	int y;
-	memset((ANY *) p, '\0', sizeof(struct tm));
+	memset((void *) p, '\0', sizeof(struct tm));
 
 	if (!PyArg_Parse(args, "(iiiiiiiii)",
 			 &y,
@@ -343,7 +343,7 @@
 	char *outbuf = 0;
 	size_t i;
 
-	memset((ANY *) &buf, '\0', sizeof(buf));
+	memset((void *) &buf, '\0', sizeof(buf));
 
 	if (!PyArg_ParseTuple(args, "sO:strftime", &fmt, &tup) 
 	    || !gettmarg(tup, &buf))
@@ -398,7 +398,7 @@
 
 	if (!PyArg_ParseTuple(args, "s|s:strptime", &buf, &fmt))
 	        return NULL;
-	memset((ANY *) &tm, '\0', sizeof(tm));
+	memset((void *) &tm, '\0', sizeof(tm));
 	s = strptime(buf, fmt, &tm);
 	if (s == NULL) {
 		PyErr_SetString(PyExc_ValueError, "format mismatch");
diff --git a/Objects/listobject.c b/Objects/listobject.c
index 52640fb..42eedf2 100644
--- a/Objects/listobject.c
+++ b/Objects/listobject.c
@@ -1258,8 +1258,8 @@
 	if (w == NULL)
 		return NULL;
 	p = ((PyTupleObject *)w)->ob_item;
-	memcpy((ANY *)p,
-	       (ANY *)((PyListObject *)v)->ob_item,
+	memcpy((void *)p,
+	       (void *)((PyListObject *)v)->ob_item,
 	       n*sizeof(PyObject *));
 	while (--n >= 0) {
 		Py_INCREF(*p);
diff --git a/Objects/object.c b/Objects/object.c
index ef3455e..6fe05f1 100644
--- a/Objects/object.c
+++ b/Objects/object.c
@@ -962,7 +962,7 @@
 
 /* Python's malloc wrappers (see mymalloc.h) */
 
-ANY *
+void *
 PyMem_Malloc(size_t nbytes)
 {
 #if _PyMem_EXTRA > 0
@@ -972,8 +972,8 @@
 	return PyMem_MALLOC(nbytes);
 }
 
-ANY *
-PyMem_Realloc(ANY *p, size_t nbytes)
+void *
+PyMem_Realloc(void *p, size_t nbytes)
 {
 #if _PyMem_EXTRA > 0
 	if (nbytes == 0)
@@ -983,7 +983,7 @@
 }
 
 void
-PyMem_Free(ANY *p)
+PyMem_Free(void *p)
 {
 	PyMem_FREE(p);
 }
@@ -991,20 +991,20 @@
 
 /* Python's object malloc wrappers (see objimpl.h) */
 
-ANY *
+void *
 PyObject_Malloc(size_t nbytes)
 {
 	return PyObject_MALLOC(nbytes);
 }
 
-ANY *
-PyObject_Realloc(ANY *p, size_t nbytes)
+void *
+PyObject_Realloc(void *p, size_t nbytes)
 {
 	return PyObject_REALLOC(p, nbytes);
 }
 
 void
-PyObject_Free(ANY *p)
+PyObject_Free(void *p)
 {
 	PyObject_FREE(p);
 }
diff --git a/Parser/intrcheck.c b/Parser/intrcheck.c
index a17041d..1b81646 100644
--- a/Parser/intrcheck.c
+++ b/Parser/intrcheck.c
@@ -18,11 +18,10 @@
 #endif
 
 #include "myproto.h"
-#include "mymalloc.h" /* For ANY */
 #include "intrcheck.h"
 
 /* Copied here from ceval.h -- can't include that file. */
-int Py_AddPendingCall(int (*func)(ANY *), ANY *arg);
+int Py_AddPendingCall(int (*func)(void *), void *arg);
 
 
 #ifdef QUICKWIN
diff --git a/Python/ceval.c b/Python/ceval.c
index db22756..5822a85 100644
--- a/Python/ceval.c
+++ b/Python/ceval.c
@@ -210,15 +210,15 @@
 
 #define NPENDINGCALLS 32
 static struct {
-	int (*func)(ANY *);
-	ANY *arg;
+	int (*func)(void *);
+	void *arg;
 } pendingcalls[NPENDINGCALLS];
 static volatile int pendingfirst = 0;
 static volatile int pendinglast = 0;
 static volatile int things_to_do = 0;
 
 int
-Py_AddPendingCall(int (*func)(ANY *), ANY *arg)
+Py_AddPendingCall(int (*func)(void *), void *arg)
 {
 	static int busy = 0;
 	int i, j;
@@ -255,8 +255,8 @@
 	things_to_do = 0;
 	for (;;) {
 		int i;
-		int (*func)(ANY *);
-		ANY *arg;
+		int (*func)(void *);
+		void *arg;
 		i = pendingfirst;
 		if (i == pendinglast)
 			break; /* Queue empty */