1 #pragma once
2 
3 #if __GNUC__ >=3
4 #pragma GCC system_header
5 #endif
6 
7 /*#define __null*/ // << Conflicts with GCC internal type __null
8 #define __notnull
9 #define __maybenull
10 #define __readonly
11 #define __notreadonly
12 #define __maybereadonly
13 #define __valid
14 #define __notvalid
15 #define __maybevalid
16 #define __readableTo(extent)
17 #define __elem_readableTo(size)
18 #define __byte_readableTo(size)
19 #define __writableTo(size)
20 #define __elem_writableTo(size)
21 #define __byte_writableTo(size)
22 #define __deref
23 #define __pre
24 #define __post
25 #define __precond(expr)
26 #define __postcond(expr)
27 #define __exceptthat
28 #define __execeptthat
29 #define __inner_success(expr)
30 #define __inner_checkReturn
31 #define __inner_typefix(ctype)
32 #define __inner_override
33 #define __inner_callback
34 #define __inner_blocksOn(resource)
35 #define __inner_fallthrough_dec
36 #define __inner_fallthrough
37 #define __refparam
38 #define __inner_control_entrypoint(category)
39 #define __inner_data_entrypoint(category)
40 
41 #define __ecount(size)
42 #define __bcount(size)
43 #define __in
44 #define __in_ecount(size)
45 #define __in_bcount(size)
46 #define __in_z
47 #define __in_ecount_z(size)
48 #define __in_bcount_z(size)
49 #define __in_nz
50 #define __in_ecount_nz(size)
51 #define __in_bcount_nz(size)
52 #define __out
53 #define __out_ecount(size)
54 #define __out_bcount(size)
55 #define __out_ecount_part(size,length)
56 #define __out_bcount_part(size,length)
57 #define __out_ecount_full(size)
58 #define __out_bcount_full(size)
59 #define __out_z
60 #define __out_z_opt
61 #define __out_ecount_z(size)
62 #define __out_bcount_z(size)
63 #define __out_ecount_part_z(size,length)
64 #define __out_bcount_part_z(size,length)
65 #define __out_ecount_full_z(size)
66 #define __out_bcount_full_z(size)
67 #define __out_nz
68 #define __out_nz_opt
69 #define __out_ecount_nz(size)
70 #define __out_bcount_nz(size)
71 #define __inout
72 #define __inout_ecount(size)
73 #define __inout_bcount(size)
74 #define __inout_ecount_part(size,length)
75 #define __inout_bcount_part(size,length)
76 #define __inout_ecount_full(size)
77 #define __inout_bcount_full(size)
78 #define __inout_z
79 #define __inout_ecount_z(size)
80 #define __inout_bcount_z(size)
81 #define __inout_nz
82 #define __inout_ecount_nz(size)
83 #define __inout_bcount_nz(size)
84 #define __ecount_opt(size)
85 #define __bcount_opt(size)
86 #define __in_opt
87 #define __in_ecount_opt(size)
88 #define __in_bcount_opt(size)
89 #define __in_z_opt
90 #define __in_ecount_z_opt(size)
91 #define __in_bcount_z_opt(size)
92 #define __in_nz_opt
93 #define __in_ecount_nz_opt(size)
94 #define __in_bcount_nz_opt(size)
95 #define __out_opt
96 #define __out_ecount_opt(size)
97 #define __out_bcount_opt(size)
98 #define __out_ecount_part_opt(size,length)
99 #define __out_bcount_part_opt(size,length)
100 #define __out_ecount_full_opt(size)
101 #define __out_bcount_full_opt(size)
102 #define __out_ecount_z_opt(size)
103 #define __out_bcount_z_opt(size)
104 #define __out_ecount_part_z_opt(size,length)
105 #define __out_bcount_part_z_opt(size,length)
106 #define __out_ecount_full_z_opt(size)
107 #define __out_bcount_full_z_opt(size)
108 #define __out_ecount_nz_opt(size)
109 #define __out_bcount_nz_opt(size)
110 #define __inout_opt
111 #define __inout_ecount_opt(size)
112 #define __inout_bcount_opt(size)
113 #define __inout_ecount_part_opt(size,length)
114 #define __inout_bcount_part_opt(size,length)
115 #define __inout_ecount_full_opt(size)
116 #define __inout_bcount_full_opt(size)
117 #define __inout_z_opt
118 #define __inout_ecount_z_opt(size)
119 #define __inout_ecount_z_opt(size)
120 #define __inout_bcount_z_opt(size)
121 #define __inout_nz_opt
122 #define __inout_ecount_nz_opt(size)
123 #define __inout_bcount_nz_opt(size)
124 #define __deref_ecount(size)
125 #define __deref_bcount(size)
126 #define __deref_out
127 #define __deref_out_ecount(size)
128 #define __deref_out_bcount(size)
129 #define __deref_out_ecount_part(size,length)
130 #define __deref_out_bcount_part(size,length)
131 #define __deref_out_ecount_full(size)
132 #define __deref_out_bcount_full(size)
133 #define __deref_out_z
134 #define __deref_out_ecount_z(size)
135 #define __deref_out_bcount_z(size)
136 #define __deref_out_nz
137 #define __deref_out_ecount_nz(size)
138 #define __deref_out_bcount_nz(size)
139 #define __deref_inout
140 #define __deref_inout_z
141 #define __deref_inout_ecount(size)
142 #define __deref_inout_bcount(size)
143 #define __deref_inout_ecount_part(size,length)
144 #define __deref_inout_bcount_part(size,length)
145 #define __deref_inout_ecount_full(size)
146 #define __deref_inout_bcount_full(size)
147 #define __deref_inout_z
148 #define __deref_inout_ecount_z(size)
149 #define __deref_inout_bcount_z(size)
150 #define __deref_inout_nz
151 #define __deref_inout_ecount_nz(size)
152 #define __deref_inout_bcount_nz(size)
153 #define __deref_ecount_opt(size)
154 #define __deref_bcount_opt(size)
155 #define __deref_out_opt
156 #define __deref_out_ecount_opt(size)
157 #define __deref_out_bcount_opt(size)
158 #define __deref_out_ecount_part_opt(size,length)
159 #define __deref_out_bcount_part_opt(size,length)
160 #define __deref_out_ecount_full_opt(size)
161 #define __deref_out_bcount_full_opt(size)
162 #define __deref_out_z_opt
163 #define __deref_out_ecount_z_opt(size)
164 #define __deref_out_bcount_z_opt(size)
165 #define __deref_out_nz_opt
166 #define __deref_out_ecount_nz_opt(size)
167 #define __deref_out_bcount_nz_opt(size)
168 #define __deref_inout_opt
169 #define __deref_inout_ecount_opt(size)
170 #define __deref_inout_bcount_opt(size)
171 #define __deref_inout_ecount_part_opt(size,length)
172 #define __deref_inout_bcount_part_opt(size,length)
173 #define __deref_inout_ecount_full_opt(size)
174 #define __deref_inout_bcount_full_opt(size)
175 #define __deref_inout_z_opt
176 #define __deref_inout_ecount_z_opt(size)
177 #define __deref_inout_bcount_z_opt(size)
178 #define __deref_inout_nz_opt
179 #define __deref_inout_ecount_nz_opt(size)
180 #define __deref_inout_bcount_nz_opt(size)
181 #define __deref_opt_ecount(size)
182 #define __deref_opt_bcount(size)
183 #define __deref_opt_out
184 #define __deref_opt_out_z
185 #define __deref_opt_out_ecount(size)
186 #define __deref_opt_out_bcount(size)
187 #define __deref_opt_out_ecount_part(size,length)
188 #define __deref_opt_out_bcount_part(size,length)
189 #define __deref_opt_out_ecount_full(size)
190 #define __deref_opt_out_bcount_full(size)
191 #define __deref_opt_inout
192 #define __deref_opt_inout_ecount(size)
193 #define __deref_opt_inout_bcount(size)
194 #define __deref_opt_inout_ecount_part(size,length)
195 #define __deref_opt_inout_bcount_part(size,length)
196 #define __deref_opt_inout_ecount_full(size)
197 #define __deref_opt_inout_bcount_full(size)
198 #define __deref_opt_inout_z
199 #define __deref_opt_inout_ecount_z(size)
200 #define __deref_opt_inout_bcount_z(size)
201 #define __deref_opt_inout_nz
202 #define __deref_opt_inout_ecount_nz(size)
203 #define __deref_opt_inout_bcount_nz(size)
204 #define __deref_opt_ecount_opt(size)
205 #define __deref_opt_bcount_opt(size)
206 #define __deref_opt_out_opt
207 #define __deref_opt_out_ecount_opt(size)
208 #define __deref_opt_out_bcount_opt(size)
209 #define __deref_opt_out_ecount_part_opt(size,length)
210 #define __deref_opt_out_bcount_part_opt(size,length)
211 #define __deref_opt_out_ecount_full_opt(size)
212 #define __deref_opt_out_bcount_full_opt(size)
213 #define __deref_opt_out_z_opt
214 #define __deref_opt_out_ecount_z_opt(size)
215 #define __deref_opt_out_bcount_z_opt(size)
216 #define __deref_opt_out_nz_opt
217 #define __deref_opt_out_ecount_nz_opt(size)
218 #define __deref_opt_out_bcount_nz_opt(size)
219 #define __deref_opt_inout_opt
220 #define __deref_opt_inout_ecount_opt(size)
221 #define __deref_opt_inout_bcount_opt(size)
222 #define __deref_opt_inout_ecount_part_opt(size,length)
223 #define __deref_opt_inout_bcount_part_opt(size,length)
224 #define __deref_opt_inout_ecount_full_opt(size)
225 #define __deref_opt_inout_bcount_full_opt(size)
226 #define __deref_opt_inout_z_opt
227 #define __deref_opt_inout_ecount_z_opt(size)
228 #define __deref_opt_inout_bcount_z_opt(size)
229 #define __deref_opt_inout_nz_opt
230 #define __deref_opt_inout_ecount_nz_opt(size)
231 #define __deref_opt_inout_bcount_nz_opt(size)
232 
233 #define __success(expr)
234 #define __nullterminated
235 #define __nullnullterminated
236 #define __reserved
237 #define __checkReturn
238 #define __typefix(ctype)
239 #define __override
240 #define __callback
241 #define __format_string
242 #define __blocksOn(resource)
243 #define __control_entrypoint(category)
244 #define __data_entrypoint(category)
245 
246 #ifndef __fallthrough
247     #define __fallthrough __inner_fallthrough
248 #endif
249 
250 #ifndef __analysis_assume
251     #define __analysis_assume(expr)
252 #endif
253