|
|
|
@ -66,22 +66,27 @@ FT_BEGIN_HEADER |
|
|
|
|
/* `CHAR_BIT' (defined in limits.h) gives the number of bits in a */ |
|
|
|
|
/* `char' type. */ |
|
|
|
|
|
|
|
|
|
#ifndef FT_CHAR_BIT |
|
|
|
|
#define FT_CHAR_BIT CHAR_BIT |
|
|
|
|
#endif |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/* The size of an `int' type. */ |
|
|
|
|
#if FT_UINT_MAX == 0xFFFFFFFFUL |
|
|
|
|
#define FT_SIZEOF_INT (32 / CHAR_BIT) |
|
|
|
|
#define FT_SIZEOF_INT (32 / FT_CHAR_BIT) |
|
|
|
|
#elif FT_UINT_MAX == 0xFFFFU |
|
|
|
|
#define FT_SIZEOF_INT (16 / CHAR_BIT) |
|
|
|
|
#define FT_SIZEOF_INT (16 / FT_CHAR_BIT) |
|
|
|
|
#elif FT_UINT_MAX > 0xFFFFFFFFU && FT_UINT_MAX == 0xFFFFFFFFFFFFFFFFU |
|
|
|
|
#define FT_SIZEOF_INT (64 / CHAR_BIT) |
|
|
|
|
#define FT_SIZEOF_INT (64 / FT_CHAR_BIT) |
|
|
|
|
#else |
|
|
|
|
#error "Unsupported size of `int' type!" |
|
|
|
|
#endif |
|
|
|
|
|
|
|
|
|
/* The size of a `long' type. */ |
|
|
|
|
#if FT_ULONG_MAX == 0xFFFFFFFFUL |
|
|
|
|
#define FT_SIZEOF_LONG (32 / CHAR_BIT) |
|
|
|
|
#define FT_SIZEOF_LONG (32 / FT_CHAR_BIT) |
|
|
|
|
#elif FT_ULONG_MAX > 0xFFFFFFFFU && FT_ULONG_MAX == 0xFFFFFFFFFFFFFFFFU |
|
|
|
|
#define FT_SIZEOF_LONG (64 / CHAR_BIT) |
|
|
|
|
#define FT_SIZEOF_LONG (64 / FT_CHAR_BIT) |
|
|
|
|
#else |
|
|
|
|
#error "Unsupported size of `long' type!" |
|
|
|
|
#endif |
|
|
|
@ -131,12 +136,12 @@ FT_BEGIN_HEADER |
|
|
|
|
typedef signed short FT_Int16; |
|
|
|
|
typedef unsigned short FT_UInt16; |
|
|
|
|
|
|
|
|
|
#if FT_SIZEOF_INT == 4 |
|
|
|
|
#if FT_SIZEOF_INT == (32 / FT_CHAR_BIT) |
|
|
|
|
|
|
|
|
|
typedef signed int FT_Int32; |
|
|
|
|
typedef unsigned int FT_UInt32; |
|
|
|
|
|
|
|
|
|
#elif FT_SIZEOF_LONG == 4 |
|
|
|
|
#elif FT_SIZEOF_LONG == (32 / FT_CHAR_BIT) |
|
|
|
|
|
|
|
|
|
typedef signed long FT_Int32; |
|
|
|
|
typedef unsigned long FT_UInt32; |
|
|
|
@ -146,12 +151,12 @@ FT_BEGIN_HEADER |
|
|
|
|
#endif |
|
|
|
|
|
|
|
|
|
/* look up an integer type that is at least 32 bits */ |
|
|
|
|
#if FT_SIZEOF_INT >= 4 |
|
|
|
|
#if FT_SIZEOF_INT >= (32 / FT_CHAR_BIT) |
|
|
|
|
|
|
|
|
|
typedef int FT_Fast; |
|
|
|
|
typedef unsigned int FT_UFast; |
|
|
|
|
|
|
|
|
|
#elif FT_SIZEOF_LONG >= 4 |
|
|
|
|
#elif FT_SIZEOF_LONG >= (32 / FT_CHAR_BIT) |
|
|
|
|
|
|
|
|
|
typedef long FT_Fast; |
|
|
|
|
typedef unsigned long FT_UFast; |
|
|
|
@ -161,7 +166,7 @@ FT_BEGIN_HEADER |
|
|
|
|
|
|
|
|
|
/* determine whether we have a 64-bit int type for platforms without */ |
|
|
|
|
/* Autoconf */ |
|
|
|
|
#if FT_SIZEOF_LONG == 8 |
|
|
|
|
#if FT_SIZEOF_LONG == (64 / FT_CHAR_BIT) |
|
|
|
|
|
|
|
|
|
/* FT_LONG64 must be defined if a 64-bit type is available */ |
|
|
|
|
#define FT_LONG64 |
|
|
|
@ -197,7 +202,7 @@ FT_BEGIN_HEADER |
|
|
|
|
#define FT_LONG64 |
|
|
|
|
#define FT_INT64 long long int |
|
|
|
|
|
|
|
|
|
#endif /* FT_SIZEOF_LONG == 8 */ |
|
|
|
|
#endif /* FT_SIZEOF_LONG == (64 / FT_CHAR_BIT) */ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#define FT_BEGIN_STMNT do { |
|
|
|
|