1 /*
2  *  stdint.h - integer types
3  *
4  *	$Id: stdint.h,v 1.2 2016-04-25 10:19:17 dom Exp $
5  */
6 
7 #ifndef _STDINT_H
8 #define _STDINT_H
9 
10 #include <sys/compiler.h>
11 #include <sys/types.h>
12 
13 typedef signed char            int8_t;
14 typedef signed int             int16_t;
15 typedef signed long            int32_t;
16 
17 typedef unsigned char          uint8_t;
18 typedef unsigned int           uint16_t;
19 typedef unsigned long          uint32_t;
20 
21 typedef signed char            int_least8_t;
22 typedef signed int             int_least16_t;
23 typedef signed long            int_least32_t;
24 
25 typedef unsigned char          uint_least8_t;
26 typedef unsigned int           uint_least16_t;
27 typedef unsigned long          uint_least32_t;
28 
29 typedef signed int             int_fast8_t;
30 typedef signed int             int_fast16_t;
31 typedef signed long            int_fast32_t;
32 
33 typedef unsigned int           uint_fast8_t;
34 typedef unsigned int           uint_fast16_t;
35 typedef unsigned long          uint_fast32_t;
36 
37 typedef long long              int64_t;
38 typedef unsigned long long     uint64_t;
39 
40 typedef long long              int_least64_t;
41 typedef unsigned long long     uint_least64_t;
42 
43 typedef long long              int_fast64_t;
44 typedef unsigned long long     uint_fast64_t;
45 
46 
47 #ifndef _INTPTR_T_DEFINED
48 #define _INTPTR_T_DEFINED
49 typedef int                    intptr_t;
50 #endif
51 
52 typedef unsigned int           uintptr_t;
53 
54 typedef long                   intmax_t;
55 typedef unsigned long          uintmax_t;
56 
57 #define INT8_MIN              -128
58 #define INT16_MIN             -32768
59 #define INT32_MIN             -2147483648L
60 
61 #define INT8_MAX               127
62 #define INT16_MAX              32767
63 #define INT32_MAX              2147483647L
64 
65 #define UINT8_MAX              255U
66 #define UINT16_MAX             65535U
67 #define UINT32_MAX             4294967295UL
68 
69 #define INT_LEAST8_MIN        -128
70 #define INT_LEAST16_MIN       -32768
71 #define INT_LEAST32_MIN       -2147483648L
72 
73 #define INT_LEAST8_MAX         127
74 #define INT_LEAST16_MAX        32767
75 #define INT_LEAST32_MAX        2147483647L
76 
77 #define UINT_LEAST8_MAX        255U
78 #define UINT_LEAST16_MAX       65535U
79 #define UINT_LEAST32_MAX       4294967295UL
80 
81 #define INT_FAST8_MIN         -32768
82 #define INT_FAST16_MIN        -32768
83 #define INT_FAST32_MIN        -2147483648L
84 
85 #define INT_FAST8_MAX          32767
86 #define INT_FAST16_MAX         32767
87 #define INT_FAST32_MAX         2147483647L
88 
89 #define UINT_FAST8_MAX         65535U
90 #define UINT_FAST16_MAX        65535U
91 #define UINT_FAST32_MAX        4294967295UL
92 
93 #define INTPTR_MIN            -32768
94 #define INTPTR_MAX             32767
95 
96 #define UINTPTR_MAX            65535U
97 
98 #define INTMAX_MIN            -2147483648L
99 #define INTMAX_MAX             2147483647L
100 
101 #define UINTMAX_MAX            4294967295UL
102 
103 #define PTRDIFF_MIN           -32768
104 #define PTRDIFF_MAX            32767
105 
106 // SIG_ATOMIC_MIN
107 // SIG_ATOMIC_MAX
108 
109 #define SIZE_MAX               65535U
110 
111 #define WCHAR_MIN              0
112 #define WCHAR_MAX              255U
113 
114 // WINT_MIN
115 // WINT_MAX
116 
117 #define INT8_C(value)          value
118 #define INT16_C(value)         value
119 #define INT32_C(value)         value##L
120 
121 #define UINT8_C(value)         value##U
122 #define UINT16_C(value)        value##U
123 #define UINT32_C(value)        value##UL
124 
125 #define INTMAX_C(value)        value##L
126 #define UINTMAX_C(value)       value##UL
127 
128 #endif
129 
130 
131