Issue#114: check for the presence of isnan and isinf, and provide compat macros on MSCV where _isnan and _finite exist instead.

This commit is contained in:
Eric Haszlakiewicz
2014-03-02 12:16:37 -05:00
parent db117ca02b
commit e6f1322b5e
4 changed files with 42 additions and 1 deletions

20
math_compat.h Normal file
View File

@@ -0,0 +1,20 @@
#ifndef __math_compat_h
#define __math_compat_h
/* Define isnan and isinf on Windows/MSVC */
#ifndef HAVE_DECL_ISNAN
# ifdef HAVE_DECL__ISNAN
#include <float.h>
#define isnan(x) _isnan(x)
# endif
#endif
#ifndef HAVE_DECL_ISINF
# ifdef HAVE_DECL__FINITE
#include <float.h>
#define isinf(x) (!_finite(x))
# endif
#endif
#endif