$NetBSD: patch-ae,v 1.5 2007/08/30 09:15:53 rillig Exp $ --- speech_tools/include/EST_math.h.orig 2004-04-30 18:56:49.000000000 +0200 +++ speech_tools/include/EST_math.h 2007-08-30 10:51:43.000000000 +0200 @@ -46,6 +46,7 @@ extern "C" int isnan(double); #endif +#include #include #include #include @@ -94,6 +95,16 @@ extern "C" { #define isnanf(X) isnan(X) #endif +/* If isnan is a macro, assume it is C99 type-variadic. */ +#if defined(__DragonFly__) && defined(isnan) +#define isnanf(X) isnan(X) +#endif + +/* The g++-3.3.6 header undefines the macro isnan, but shouldn't. */ +#if !defined(isnan) && defined(__fpmacro_unary_floating) +#define isnan(X) __fpmacro_unary_floating(isnan, (X)) +#endif + /* FreeBSD *and other 4.4 based systems require anything, isnanf is defined */ #if defined(__FreeBSD__)