MADARA  3.1.8
inttypes.h
Go to the documentation of this file.
1 
2 #ifndef _MADARA_INTTYPES_H_
3 #define _MADARA_INTTYPES_H_
4 
5 // Because Microsoft decided to not support inttypes.h
6 // from VS 2003 until VS 2012, we simply typedef the
7 // symbols that are supported in all MS products when
8 // we know we have a MS compiler
9 
10 #ifdef _MSC_VER
11 
12  #if (MSC_VER <= 1600)
13 
14  #ifndef PRIu64
15 
16  #define PRId32 "I32d"
17  #define PRIi32 "I32i"
18  #define PRIo32 "I32o"
19  #define PRIu32 "I32u"
20  #define PRIx32 "I32x"
21  #define PRIX32 "I32X"
22 
23  #define PRId64 "I64d"
24  #define PRIi64 "I64i"
25  #define PRIo64 "I64o"
26  #define PRIu64 "I64u"
27  #define PRIx64 "I64x"
28  #define PRIX64 "I64X"
29 
30  #endif // ! ifndef PRIu64
31 
32  #else // (MSC_VER > 1600)
33 
34  // otherwise, we do something more logical
35  #include <inttypes.h>
36 
37  #endif // (MSC_VER <= 1600)
38 
39 #else // !_MSC_VER
40 
41  // otherwise, we do something more logical
42  #include <inttypes.h>
43 
44 #endif // _MSC_VER
45 
46 #endif // _MADARA_INTTYPES_H_