replaced libart with new polygon code
[swftools.git] / lib / types.h
index ccc576d..6af6ab7 100644 (file)
@@ -1,6 +1,8 @@
 #ifndef __rfxtypes_h__
 #define __rfxtypes_h__
 
+#include "../config.h"
+
 #ifndef TRUE
 #define TRUE (1)
 #endif
 
 // SWF Types
 
+#if SIZEOF_SIGNED_LONG_LONG != 8
+#error "no way to define 64 bit integer"
+#endif
+#if SIZEOF_SIGNED != 4
+#error "don't know how to define 32 bit integer"
+#endif
+#if SIZEOF_SIGNED_SHORT != 2
+#error "don't know how to define 16 bit integer"
+#endif
+#if SIZEOF_SIGNED_CHAR != 1
+#error "don't know how to define 8 bit integer"
+#endif
+
 typedef         unsigned long long  U64;
 typedef         signed long long    S64;
-typedef         unsigned long       U32;
-typedef         signed long         S32;
+typedef         unsigned           U32;
+typedef         signed             S32;
 typedef         unsigned short      U16;
 typedef         signed short        S16;
 typedef         unsigned char       U8;
 typedef         signed char         S8;
 
+#if SIZEOF_VOIDP == SIZEOF_SIGNED_LONG_LONG
+typedef unsigned long long ptroff_t;
+#elif SIZEOF_VOIDP == SIZEOF_SIGNED
+typedef unsigned ptroff_t;
+#else
+#error "Unknown pointer size"
+#endif
+
 #endif