Nedmalloc's source code has a cute #define construct to avoid inserting
an if() statement, because that might interact badly with enclosing if()
statements. However, GCC > 4 complains with a "warning: value computed
is not used". So we cast the result to "void".
GCC also does not understand the Visual C++ specific pragmas, so we need
to disable them for MinGW.
We need to include malloc.h on Windows even if we happen to compile the
stuff as a MinGW program. Otherwise the function declaration of alloca()
is missing.
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
/*------------------------------ internal #includes ---------------------- */
#ifdef WIN32
+#ifndef __GNUC__
#pragma warning( disable : 4146 ) /* no "unsigned" warnings */
+#endif
#endif /* WIN32 */
#include <stdio.h> /* for printing in malloc_stats */
static struct malloc_params mparams;
/* Ensure mparams initialized */
-#define ensure_initialization() (mparams.magic != 0 || init_mparams())
+#define ensure_initialization() ((void)(mparams.magic == 0 || init_mparams()))
#if !ONLY_MSPACES
/*#define FULLSANITYCHECKS*/
#include "nedmalloc.h"
-#if defined(WIN32) && !defined(__MINGW32__)
+#if defined(WIN32)
#include <malloc.h>
#endif
#define MSPACES 1