1 
2 // automatically generated by m4 from headers in proto subdir
3 
4 
5 #ifndef __INTTYPES_H__
6 #define __INTTYPES_H__
7 
8 #include <stdint.h>
9 
10 // DATA STRUCTURES
11 
12 #ifdef __CLANG
13 
14    typedef struct imaxdiv_s
15    {
16 
17       long long rem;
18       long long quot;
19 
20    } imaxdiv_t;
21 
22 #endif
23 
24 #ifdef __SDCC
25 
26    typedef struct imaxdiv_s
27    {
28 
29       long long rem;
30       long long quot;
31 
32    } imaxdiv_t;
33 
34 #endif
35 
36 #ifdef __SCCZ80
37 
38    typedef struct imaxdiv_s
39    {
40 
41       long quot;
42       long rem;
43 
44    } imaxdiv_t;
45 
46 #endif
47 
48 #ifdef __CLANG
49 
50 extern intmax_t imaxabs(intmax_t j);
51 
52 #endif
53 
54 #ifdef __SDCC
55 
56 extern intmax_t imaxabs(intmax_t j);
57 extern intmax_t imaxabs_callee(intmax_t j) __z88dk_callee;
58 #define imaxabs(a) imaxabs_callee(a)
59 
60 #endif
61 
62 #ifdef __SCCZ80
63 
64 extern intmax_t imaxabs(intmax_t j) __preserves_regs(b,c);
65 extern intmax_t imaxabs_fastcall(intmax_t j) __preserves_regs(b,c) __z88dk_fastcall;
66 #define imaxabs(a) imaxabs_fastcall(a)
67 
68 
69 
70 #endif
71 
72 extern void _imaxdiv_(imaxdiv_t *md,intmax_t numer,intmax_t denom);
73 extern void _imaxdiv__callee(imaxdiv_t *md,intmax_t numer,intmax_t denom) __z88dk_callee;
74 #define _imaxdiv_(a,b,c) _imaxdiv__callee(a,b,c)
75 
76 
77 extern intmax_t strtoimax(const char *nptr,char **endptr,int base);
78 extern intmax_t strtoimax_callee(const char *nptr,char **endptr,int base) __z88dk_callee;
79 #define strtoimax(a,b,c) strtoimax_callee(a,b,c)
80 
81 
82 extern uintmax_t strtoumax(const char *nptr,char **endptr,int base);
83 extern uintmax_t strtoumax_callee(const char *nptr,char **endptr,int base) __z88dk_callee;
84 #define strtoumax(a,b,c) strtoumax_callee(a,b,c)
85 
86 
87 
88 // PRINTF FORMAT SPECIFIERS
89 
90 #define PRId8          "d"
91 #define PRId16         "d"
92 #define PRId32         "ld"
93 
94 #define PRIi8          "i"
95 #define PRIi16         "i"
96 #define PRIi32         "li"
97 
98 #define PRIdLEAST8     "d"
99 #define PRIdLEAST16    "d"
100 #define PRIdLEAST32    "ld"
101 
102 #define PRIiLEAST8     "i"
103 #define PRIiLEAST16    "i"
104 #define PRIiLEAST32    "li"
105 
106 #define PRIdFAST8      "d"
107 #define PRIdFAST16     "d"
108 #define PRIdFAST32     "ld"
109 
110 #define PRIiFAST8      "i"
111 #define PRIiFAST16     "i"
112 #define PRIiFAST32     "li"
113 
114 #ifdef __CLANG
115 
116 #define PRId64         "lld"
117 #define PRIi64         "lli"
118 #define PRIdLEAST64    "lld"
119 #define PRIiLEAST64    "lli"
120 #define PRIdFAST64     "lld"
121 #define PRIiFAST64     "lli"
122 
123 #endif
124 
125 #ifdef __SDCC
126 
127 #define PRId64         "lld"
128 #define PRIi64         "lli"
129 #define PRIdLEAST64    "lld"
130 #define PRIiLEAST64    "lli"
131 #define PRIdFAST64     "lld"
132 #define PRIiFAST64     "lli"
133 
134 #endif
135 
136 #ifdef __CLANG
137 
138 #define PRIdMAX        "lld"
139 #define PRIiMAX        "lli"
140 
141 #endif
142 
143 #ifdef __SDCC
144 
145 #define PRIdMAX        "lld"
146 #define PRIiMAX        "lli"
147 
148 #endif
149 
150 #ifdef __SCCZ80
151 
152 #define PRIdMAX        "ld"
153 #define PRIiMAX        "li"
154 
155 #endif
156 
157 #define PRIdPTR        "d"
158 #define PRIiPTR        "i"
159 
160 #define PRIo8          "o"
161 #define PRIo16         "o"
162 #define PRIo32         "lo"
163 
164 #define PRIu8          "u"
165 #define PRIu16         "u"
166 #define PRIu32         "lu"
167 
168 #define PRIx8          "x"
169 #define PRIx16         "x"
170 #define PRIx32         "lx"
171 
172 #define PRIX8          "X"
173 #define PRIX16         "X"
174 #define PRIX32         "lX"
175 
176 #ifdef __CLANG
177 
178 #define PRIo64         "llo"
179 #define PRIu64         "llu"
180 #define PRIx64         "llx"
181 #define PRIX64         "llX"
182 
183 #endif
184 
185 #ifdef __SDCC
186 
187 #define PRIo64         "llo"
188 #define PRIu64         "llu"
189 #define PRIx64         "llx"
190 #define PRIX64         "llX"
191 
192 #endif
193 
194 #define PRIoLEAST8     "o"
195 #define PRIoLEAST16    "o"
196 #define PRIoLEAST32    "lo"
197 
198 #define PRIuLEAST8     "u"
199 #define PRIuLEAST16    "u"
200 #define PRIuLEAST32    "lu"
201 
202 #define PRIxLEAST8     "x"
203 #define PRIxLEAST16    "x"
204 #define PRIxLEAST32    "lx"
205 
206 #define PRIXLEAST8     "X"
207 #define PRIXLEAST16    "X"
208 #define PRIXLEAST32    "lX"
209 
210 #ifdef __CLANG
211 
212 #define PRIoLEAST64    "llo"
213 #define PRIuLEAST64    "llu"
214 #define PRIxLEAST64    "llx"
215 #define PRIXLEAST64    "llX"
216 
217 #endif
218 
219 #ifdef __SDCC
220 
221 #define PRIoLEAST64    "llo"
222 #define PRIuLEAST64    "llu"
223 #define PRIxLEAST64    "llx"
224 #define PRIXLEAST64    "llX"
225 
226 #endif
227 
228 #define PRIoFAST8      "o"
229 #define PRIoFAST16     "o"
230 #define PRIoFAST32     "lo"
231 
232 #define PRIuFAST8      "u"
233 #define PRIuFAST16     "u"
234 #define PRIuFAST32     "lu"
235 
236 #define PRIxFAST8      "x"
237 #define PRIxFAST16     "x"
238 #define PRIxFAST32     "lx"
239 
240 #define PRIXFAST8      "X"
241 #define PRIXFAST16     "X"
242 #define PRIXFAST32     "lX"
243 
244 #ifdef __CLANG
245 
246 #define PRIoFAST64     "llo"
247 #define PRIuFAST64     "llu"
248 #define PRIxFAST64     "llx"
249 #define PRIXFAST64     "llX"
250 
251 #endif
252 
253 #ifdef __SDCC
254 
255 #define PRIoFAST64     "llo"
256 #define PRIuFAST64     "llu"
257 #define PRIxFAST64     "llx"
258 #define PRIXFAST64     "llX"
259 
260 #endif
261 
262 #ifdef __CLANG
263 
264 #define PRIoMAX        "llo"
265 #define PRIuMAX        "llu"
266 #define PRIxMAX        "llx"
267 #define PRIXMAX        "llX"
268 
269 #endif
270 
271 #ifdef __SDCC
272 
273 #define PRIoMAX        "llo"
274 #define PRIuMAX        "llu"
275 #define PRIxMAX        "llx"
276 #define PRIXMAX        "llX"
277 
278 #endif
279 
280 #ifdef __SCCZ80
281 
282 #define PRIoMAX        "lo"
283 #define PRIuMAX        "lu"
284 #define PRIxMAX        "lx"
285 #define PRIXMAX        "lX"
286 
287 #endif
288 
289 #define PRIoPTR        "o"
290 #define PRIuPTR        "u"
291 #define PRIxPTR        "x"
292 #define PRIXPTR        "X"
293 
294 // SCANF FORMAT SPECIFIERS
295 
296 #define SCNd8          "d"
297 #define SCNd16         "d"
298 #define SCNd32         "ld"
299 
300 #define SCNi8          "i"
301 #define SCNi16         "i"
302 #define SCNi32         "li"
303 
304 #define SCNdLEAST8     "d"
305 #define SCNdLEAST16    "d"
306 #define SCNdLEAST32    "ld"
307 
308 #define SCNiLEAST8     "i"
309 #define SCNiLEAST16    "i"
310 #define SCNiLEAST32    "li"
311 
312 #define SCNdFAST8      "d"
313 #define SCNdFAST16     "d"
314 #define SCNdFAST32     "ld"
315 
316 #define SCNiFAST8      "i"
317 #define SCNiFAST16     "i"
318 #define SCNiFAST32     "li"
319 
320 #ifdef __CLANG
321 
322 #define SCNd64         "lld"
323 #define SCNi64         "lli"
324 #define SCNdLEAST64    "lld"
325 #define SCNiLEAST64    "lli"
326 #define SCNdFAST64     "lld"
327 #define SCNiFAST64     "lli"
328 
329 #endif
330 
331 #ifdef __SDCC
332 
333 #define SCNd64         "lld"
334 #define SCNi64         "lli"
335 #define SCNdLEAST64    "lld"
336 #define SCNiLEAST64    "lli"
337 #define SCNdFAST64     "lld"
338 #define SCNiFAST64     "lli"
339 
340 #endif
341 
342 #ifdef __CLANG
343 
344 #define SCNdMAX        "lld"
345 #define SCNiMAX        "lli"
346 
347 #endif
348 
349 #ifdef __SDCC
350 
351 #define SCNdMAX        "lld"
352 #define SCNiMAX        "lli"
353 
354 #endif
355 
356 #ifdef __SCCZ80
357 
358 #define SCNdMAX        "ld"
359 #define SCNiMAX        "li"
360 
361 #endif
362 
363 #define SCNdPTR        "d"
364 #define SCNiPTR        "i"
365 
366 #define SCNo8          "o"
367 #define SCNo16         "o"
368 #define SCNo32         "lo"
369 
370 #define SCNu8          "u"
371 #define SCNu16         "u"
372 #define SCNu32         "lu"
373 
374 #define SCNx8          "x"
375 #define SCNx16         "x"
376 #define SCNx32         "lx"
377 
378 #ifdef __CLANG
379 
380 #define SCNo64         "llo"
381 #define SCNu64         "llu"
382 #define SCNx64         "llx"
383 
384 #endif
385 
386 #ifdef __SDCC
387 
388 #define SCNo64         "llo"
389 #define SCNu64         "llu"
390 #define SCNx64         "llx"
391 
392 #endif
393 
394 #define SCNoLEAST8     "o"
395 #define SCNoLEAST16    "o"
396 #define SCNoLEAST32    "lo"
397 
398 #define SCNuLEAST8     "u"
399 #define SCNuLEAST16    "u"
400 #define SCNuLEAST32    "lu"
401 
402 #define SCNxLEAST8     "x"
403 #define SCNxLEAST16    "x"
404 #define SCNxLEAST32    "lx"
405 
406 #ifdef __CLANG
407 
408 #define SCNoLEAST64    "llo"
409 #define SCNuLEAST64    "llu"
410 #define SCNxLEAST64    "llx"
411 
412 #endif
413 
414 #ifdef __SDCC
415 
416 #define SCNoLEAST64    "llo"
417 #define SCNuLEAST64    "llu"
418 #define SCNxLEAST64    "llx"
419 
420 #endif
421 
422 #define SCNoFAST8      "o"
423 #define SCNoFAST16     "o"
424 #define SCNoFAST32     "lo"
425 
426 #define SCNuFAST8      "u"
427 #define SCNuFAST16     "u"
428 #define SCNuFAST32     "lu"
429 
430 #define SCNxFAST8      "x"
431 #define SCNxFAST16     "x"
432 #define SCNxFAST32     "lx"
433 
434 #ifdef __CLANG
435 
436 #define SCNoFAST64     "llo"
437 #define SCNuFAST64     "llu"
438 #define SCNxFAST64     "llx"
439 
440 #endif
441 
442 #ifdef __SDCC
443 
444 #define SCNoFAST64     "llo"
445 #define SCNuFAST64     "llu"
446 #define SCNxFAST64     "llx"
447 
448 #endif
449 
450 #ifdef __CLANG
451 
452 #define SCNoMAX        "llo"
453 #define SCNuMAX        "llu"
454 #define SCNxMAX        "llx"
455 
456 #endif
457 
458 #ifdef __SDCC
459 
460 #define SCNoMAX        "llo"
461 #define SCNuMAX        "llu"
462 #define SCNxMAX        "llx"
463 
464 #endif
465 
466 #ifdef __SCCZ80
467 
468 #define SCNoMAX        "lo"
469 #define SCNuMAX        "lu"
470 #define SCNxMAX        "lx"
471 
472 #endif
473 
474 #define SCNoPTR        "o"
475 #define SCNuPTR        "u"
476 #define SCNxPTR        "x"
477 
478 #endif
479