diff --git a/vpx/vpx_integer.h b/vpx/vpx_integer.h index 9a06c1ac395a89291399d3e2bf74ffe96eecb940..608760f8bb4acc5f4771da053eb1e1aecd2f2478 100644 --- a/vpx/vpx_integer.h +++ b/vpx/vpx_integer.h @@ -15,7 +15,7 @@ /* get ptrdiff_t, size_t, wchar_t, NULL */ #include <stddef.h> -#if defined(_MSC_VER) || defined(VPX_EMULATE_INTTYPES) +#if (defined(_MSC_VER) && (_MSC_VER < 1600)) || defined(VPX_EMULATE_INTTYPES) typedef signed char int8_t; typedef signed short int16_t; typedef signed int int32_t; @@ -24,10 +24,9 @@ typedef unsigned char uint8_t; typedef unsigned short uint16_t; typedef unsigned int uint32_t; -#if defined(_MSC_VER) +#if (defined(_MSC_VER) && (_MSC_VER < 1600)) typedef signed __int64 int64_t; typedef unsigned __int64 uint64_t; -#define PRId64 "I64d" #endif #ifdef HAVE_ARMV6 @@ -50,8 +49,14 @@ typedef unsigned int uintptr_t; #define __STDC_FORMAT_MACROS #endif #include <stdint.h> -#include <inttypes.h> #endif +/* VS2010 defines stdint.h, but not inttypes.h */ +#if defined(_MSC_VER) +#define PRId64 "I64d" +#else +#include <inttypes.h> +#endif + #endif