Andreas Jaeger <aj(a)arthur.rhein-neckar.de> writes:
...
File: emacs.c:
==============
In glibc 2.1 <malloc.h> will have:
extern void (*__free_hook) __MALLOC_P ((__malloc_ptr_t __ptr,
__const __malloc_ptr_t));
But 2.0.7 has:
extern void (*__free_hook) __MALLOC_P ((__malloc_ptr_t __ptr));
This leads to a warning in emacs.c for the assignment:
voodoo_free_hook(void *mem)
{
/* Disable all calls to free() when XEmacs is exiting and it doesn't */
/* matter. */
__free_hook = voodoo_free_hook;
}
The `voodoo_free_hook' is what I'm using to avoid the C++
constructor/destructor fuckage introduced by GCC 2.8/EGCS that leaks
into C code.
Should we add a second parameter with the following conditinal?
#if defined DOUG_LEA_MALLOC && __GLIBC__ == 2 && __GLIBC__MINOR__ >=
1
Or should we just ignore it?
You can probably ignore it. `voodoo_free_hook' is intentionally a
black hole that is going to ignore its parameters anyway.