Code

add document to action events
[inkscape.git] / src / isnan.h
index de8b6d6299103e6962881c89fe3063782bad2d29..608f9bb561fe3b1182c32cfccb7c34a432421327 100644 (file)
  */
 
 #if defined(__isnan)
+# define isNaN(_a) (__isnan(_a))
+#elif defined(__APPLE__) && __GNUC__ == 3
 # define isNaN(_a) (__isnan(_a))       /* MacOSX/Darwin definition < 10.4 */
 #elif defined(WIN32) || defined(_isnan)
 # define isNaN(_a) (_isnan(_a))        /* Win32 definition */
-#elif defined(isnan) || defined(__FreeBSD__)
+#elif defined(isnan) || defined(__FreeBSD__) || defined(__osf__)
+# define isNaN(_a) (isnan(_a))         /* GNU definition */
+#elif defined (SOLARIS_2_8) && __GNUC__ == 3 && __GNUC_MINOR__ == 2
 # define isNaN(_a) (isnan(_a))         /* GNU definition */
 #else
 # define isNaN(_a) (std::isnan(_a))
 
 
 #if defined(__isfinite)
+# define isFinite(_a) (__isfinite(_a))
+#elif defined(__APPLE__) && __GNUC__ == 3
 # define isFinite(_a) (__isfinite(_a)) /* MacOSX/Darwin definition < 10.4 */
 #elif defined(__sgi)
 # define isFinite(_a) (_isfinite(_a))
 #elif defined(isfinite)
 # define isFinite(_a) (isfinite(_a))
+#elif defined(__osf__)
+# define isFinite(_a) (finite(_a) && !isNaN(_a))
+#elif defined (SOLARIS_2_8) && __GNUC__ == 3 && __GNUC_MINOR__ == 2
+#include  <ieeefp.h>
+#define isFinite(_a) (finite(_a) && !isNaN(_a))
 #else
 # define isFinite(_a) (std::isfinite(_a))
 #endif