Go to the documentation of this file. 1 #ifndef PROTON_TYPE_COMPAT_H
2 #define PROTON_TYPE_COMPAT_H 1
26 #if !defined(__cplusplus) && !defined(__bool_true_false_are_defined)
27 # if __STDC_VERSION__ >= 199901L || __GNUC__ >= 3 || _MSC_VER >=1800
35 # define __bool_true_false_are_defined
37 # error "No definitions for bool/true/false"
52 #if defined(PN_DEFINE_STDINT)
53 # define PNI_DEFINE_STDINT
55 #if defined(PN_INCLUDE_STDINT)
56 # define PNI_INCLUDE_STDINT)
58 #if defined(PN_DEFINE_SSIZE_T)
59 # define PNI_DEFINE_SSIZE_T
65 # ifndef PNI_INCLUDE_STDINT
66 # define PNI_INCLUDE_STDINT
70 # ifndef PNI_DEFINE_SSIZE_T
73 # define PNI_DEFINE_SSIZE_T
77 # if (_MSC_VER < 1600)
79 # ifndef PNI_DEFINE_STDINT
80 # define PNI_DEFINE_STDINT
84 # ifndef PNI_INCLUDE_STDINT
85 # define PNI_INCLUDE_STDINT
88 # endif // (_MSC_VER < 1600)
92 #ifdef PN_NODEFINE_SSIZE_T
93 # undef PNI_DEFINE_SSIZE_T
95 #ifdef PN_NODEFINE_STDINT
96 # undef PNI_DEFINE_STDINT
98 #ifdef PN_NOINCLUDE_STDINT
99 # undef PNI_INCLUDE_STDINT
102 #ifdef PNI_INCLUDE_STDINT
106 #ifdef PNI_DEFINE_SSIZE_T
108 # include <BaseTsd.h>
109 typedef SSIZE_T ssize_t;
111 # error ssize_t definition not kown
113 #endif // PNI_DEFINE_SSIZE_T
115 #ifdef PNI_DEFINE_STDINT
118 typedef signed __int8 int8_t;
119 typedef signed __int16 int16_t;
120 typedef signed __int32 int32_t;
121 typedef signed __int64 int64_t;
123 typedef unsigned __int8 uint8_t;
124 typedef unsigned __int16 uint16_t;
125 typedef unsigned __int32 uint32_t;
126 typedef unsigned __int64 uint64_t;
129 # error stdint.h definitions not kown
131 #endif // PNI_DEFINE_SSIZE_T