#ifndef _ZT_STDINT_H_
#define _ZT_STDINT_H_

#if !defined(_MSC_VER) || _MSC_VER >= 1600
#include <stdint.h>
#else
typedef __int8 int8_t;
typedef unsigned __int8 uint8_t;
typedef __int16 int16_t;
typedef unsigned __int16 uint16_t;
typedef __int32 int32_t;
typedef unsigned __int32 uint32_t;
typedef __int64 int64_t;
typedef unsigned __int64 uint64_t;
#endif

#endif

#ifndef _ZT_STDINT_H_
#define _ZT_STDINT_H_

#if !defined(_MSC_VER) || _MSC_VER >= 1600
#include <stdint.h>
#else
typedef signed char int8_t;
typedef unsigned char uint8_t;
typedef short int16_t;
typedef unsigned short uint16_t;
typedef int int32_t;
typedef unsigned int uint32_t;
typedef __int64 int64_t;
typedef unsigned __int64 uint64_t;
#endif

#endif

Use integer types that are consistent with what tend to be the underlying types for stdint typedefs
Use integer types that are consistent with what tend to be the
underlying types for stdint typedefs

Windows treats signed char and __int8 as distinct types.
