#ifdef _MSC_VER
# include <float.h>
# define finite _finite
+#elif defined(sun) || defined(sgi)
+# include <ieeefp.h>
#endif
SG_USING_STD(string);
#ifdef HAVE_STDINT_H
# include <stdint.h>
-#elif defined( _MSC_VER ) || defined(__MINGW32__)
-typedef signed char int8_t;
+#elif defined( _MSC_VER ) || defined(__MINGW32__) || defined(sun)
typedef signed short int16_t;
typedef signed int int32_t;
-typedef signed __int64 int64_t;
-typedef unsigned char uint8_t;
typedef unsigned short uint16_t;
typedef unsigned int uint32_t;
-typedef unsigned __int64 uint64_t;
#else
# error "Port me! Platforms that don't have <stdint.h> need to define int8_t, et. al."
#endif
#ifdef HAVE_STDINT_H
# include <stdint.h>
-#elif defined( _MSC_VER ) || defined(__MINGW32__)
-typedef signed char int8_t;
+#elif defined( _MSC_VER ) || defined(__MINGW32__) || defined(sun)
typedef signed short int16_t;
typedef signed int int32_t;
-typedef signed __int64 int64_t;
-typedef unsigned char uint8_t;
typedef unsigned short uint16_t;
typedef unsigned int uint32_t;
-typedef unsigned __int64 uint64_t;
#else
# error "Port me! Platforms that don't have <stdint.h> need to define int8_t, et. al."
#endif
#ifdef HAVE_STDINT_H
# include <stdint.h>
-#elif defined( _MSC_VER ) || defined(__MINGW32__)
-typedef signed char int8_t;
+#elif defined( _MSC_VER ) || defined(__MINGW32__) || defined(sun)
typedef signed short int16_t;
typedef signed int int32_t;
-typedef signed __int64 int64_t;
-typedef unsigned char uint8_t;
typedef unsigned short uint16_t;
typedef unsigned int uint32_t;
-typedef unsigned __int64 uint64_t;
#else
# error "Port me! Platforms that don't have <stdint.h> need to define int8_t, et. al."
#endif