X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=simgear%2Fcompiler.h;h=939d9f319c6ad18b2942f7125ebd7fc6504688e4;hb=dd044844e52e939af0c4e979f25583862123bb7a;hp=cfa91f86441df92aa7cdcc9bd3f61e81e1ddc3ac;hpb=ae1625734c48d7616123f81137f18936bbfee59e;p=simgear.git diff --git a/simgear/compiler.h b/simgear/compiler.h index cfa91f86..939d9f31 100644 --- a/simgear/compiler.h +++ b/simgear/compiler.h @@ -63,6 +63,9 @@ # if _MSC_VER >= 1200 // msvc++ 6.0 or greater # define isnan _isnan # define snprintf _snprintf +# if _MSC_VER < 1500 +# define vsnprintf _vsnprintf +# endif # define copysign _copysign # pragma warning(disable: 4786) // identifier was truncated to '255' characters @@ -132,14 +135,14 @@ #ifdef __APPLE__ # ifdef __GNUC__ -# if ( __GNUC__ >= 3 ) && ( __GNUC_MINOR__ >= 3 ) +# if ( __GNUC__ > 3 ) || ( __GNUC__ == 3 && __GNUC_MINOR__ >= 3 ) inline int (isnan)(double r) { return !(r <= 0 || r >= 0); } # else // any C++ header file undefines isinf and isnan // so this should be included before // the functions are STILL in libm (libSystem on mac os x) -extern "C" int isnan (double); -extern "C" int isinf (double); +extern "C" int (isnan)(double); +extern "C" int (isinf)(double); # endif # else inline int (isnan)(double r) { return !(r <= 0 || r >= 0); } @@ -158,10 +161,6 @@ inline int (isnan)(double r) { return !(r <= 0 || r >= 0); } # include // isnan #endif -#if defined(__MINGW32__) -# define isnan(x) _isnan(x) -#endif - // // No user modifiable definitions beyond here.