00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023 #ifndef _STDINT_H
00024 #define _STDINT_H
00025
00026 #include <nlibc.h>
00027 #include <limits.h>
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038
00039
00040
00041
00042
00043
00044
00045
00046
00047
00048
00049
00050
00051
00052
00053
00054
00055
00056
00057
00058
00059
00060
00061
00062
00063 typedef long long int int64_t;
00064 typedef unsigned long long int uint64_t;
00065
00066
00067
00068
00069
00070
00071
00072
00073 #define INT64_MIN LLONG_MIN
00074
00075
00076
00077
00078 #define INT64_MAX LLONG_MAX
00079
00080
00081
00082
00083 #define UINT64_MAX ULLONG_MAX
00084
00085 #define INTMAX_MIN INT64_MIN
00086 #define INTMAX_MAX INT64_MAX
00087 #define UINTMAX_MAX UINT64_MAX
00088
00089
00090
00091
00092 typedef short int int_least8_t;
00093 typedef int int_least16_t;
00094 typedef long int int_least32_t;
00095 typedef long long int int_least64_t;
00096
00097 typedef unsigned short int uint_least8_t;
00098 typedef unsigned int uint_least16_t;
00099 typedef unsigned long int uint_least32_t;
00100 typedef unsigned long long int uint_least64_t;
00101
00102
00103
00104
00105
00106 #define INT_LEAST8_MIN SHRT_MIN //
00107 #define INT_LEAST16_MIN INT_MIN //
00108 #define INT_LEAST32_MIN LONG_MIN //
00109 #define INT_LEAST64_MIN LLONG_MIN //
00110
00111 #define INT_LEAST8_MAX SHRT_MAX //
00112 #define INT_LEAST16_MAX INT_MAX //
00113 #define INT_LEAST32_MAX LONG_MAX //
00114 #define INT_LEAST64_MAX LLONG_MAX //
00115
00116 #define UINT_LEAST8_MAX USHRT_MAX //
00117 #define UINT_LEAST16_MAX UINT_MAX //
00118 #define UINT_LEAST32_MAX ULONG_MAX //
00119 #define UINT_LEAST64_MAX ULLONG_MAX //
00120
00121
00122
00123 typedef short int int_fast8_t;
00124 typedef int int_fast16_t;
00125 typedef long int int_fast32_t;
00126 typedef long long int int_fast64_t;
00127
00128 typedef unsigned short int uint_fast8_t;
00129 typedef unsigned int uint_fast16_t;
00130 typedef unsigned long int uint_fast32_t;
00131 typedef unsigned long long int uint_fast64_t;
00132
00133
00134
00135 #define INT_FAST8_MIN SHRT_MIN //
00136 #define INT_FAST16_MIN INT_MIN //
00137 #define INT_FAST32_MIN LONG_MIN //
00138 #define INT_FAST64_MIN LLONG_MIN //
00139
00140 #define INT_FAST8_MAX SHRT_MAX //
00141 #define INT_FAST16_MAX INT_MAX //
00142 #define INT_FAST32_MAX LONG_MAX //
00143 #define INT_FAST64_MAX LLONG_MAX //
00144
00145 #define UINT_FAST8_MAX USHRT_MAX //
00146 #define UINT_FAST16_MAX UINT_MAX //
00147 #define UINT_FAST32_MAX ULONG_MAX //
00148 #define UINT_FAST64_MAX ULLONG_MAX //
00149
00150
00151 typedef int64_t intptr_t;
00152 typedef uint64_t uintptr_t;
00153
00154 #define INTPTR_MIN LLONG_MIN
00155 #define INTPTR_MAX LLONG_MAX
00156 #define UINTPTR_MAX ULLONG_MAX
00157
00158 typedef int64_t intmax_t;
00159 typedef uint64_t uintmax_t;
00160
00161
00162
00163
00164
00165
00166
00167 #define INT8_C(value) value
00168 #define INT16_C(value) value
00169 #define INT32_C(value) value ##L // long
00170 #define INT64_C(value) value ##LL // long long
00171 #define UINT8_C(value) value ##U // unsigned
00172 #define UINT16_C(value) value ##U // unsigned
00173 #define UINT32_C(value) value ##UL // unsigned long
00174 #define UINT64_C(value) value ##ULL // unsigned long long
00175
00176
00177 #define INTMAX_C(value) value ##L // int
00178 #define UINTMAX_C(value) value ##UL // uint
00179 #define LONGMAX_C(value) value ##LL // long
00180 #define ULONGMAX_C(value) value ##ULL // ulong
00181
00182
00183
00184
00185 #ifndef _PTRDIFF_T
00186 #define _PTRDIFF_T
00187 typedef int ptrdiff_t;
00188 #endif
00189 #ifndef PTRDIFF_MIN
00190 #define PTRDIFF_MIN INT64_MIN
00191 #endif
00192 #ifndef PTRDIFF_MAX
00193 #define PTRDIFF_MAX INT64_MAX
00194 #endif
00195
00196 #define SIG_ATOMIC_MIN INT_MIN
00197 #define SIG_ATOMIC_MAX INT_MAX
00198
00199
00200 #define SIZE_MAX UINT_MAX
00201 #define WINT_MIN INT64_MIN
00202 #define WINT_MAX INT64_MAX
00203
00204 #endif
00205
00206
00207
00208
00209
00210
00211
00212
00213
00214
00215