xref: /xnu-12377.1.9/EXTERNAL_HEADERS/_inttypes.h (revision f6217f891ac0bb64f3d375211650a4c1ff8ca1ea)
1*f6217f89SApple OSS Distributions /*
2*f6217f89SApple OSS Distributions  * Copyright (c) 2023 Apple Inc. All rights reserved.
3*f6217f89SApple OSS Distributions  *
4*f6217f89SApple OSS Distributions  * @APPLE_LICENSE_HEADER_START@
5*f6217f89SApple OSS Distributions  *
6*f6217f89SApple OSS Distributions  * This file contains Original Code and/or Modifications of Original Code
7*f6217f89SApple OSS Distributions  * as defined in and that are subject to the Apple Public Source License
8*f6217f89SApple OSS Distributions  * Version 2.0 (the 'License'). You may not use this file except in
9*f6217f89SApple OSS Distributions  * compliance with the License. Please obtain a copy of the License at
10*f6217f89SApple OSS Distributions  * http://www.opensource.apple.com/apsl/ and read it before using this
11*f6217f89SApple OSS Distributions  * file.
12*f6217f89SApple OSS Distributions  *
13*f6217f89SApple OSS Distributions  * The Original Code and all software distributed under the License are
14*f6217f89SApple OSS Distributions  * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
15*f6217f89SApple OSS Distributions  * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
16*f6217f89SApple OSS Distributions  * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
17*f6217f89SApple OSS Distributions  * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
18*f6217f89SApple OSS Distributions  * Please see the License for the specific language governing rights and
19*f6217f89SApple OSS Distributions  * limitations under the License.
20*f6217f89SApple OSS Distributions  *
21*f6217f89SApple OSS Distributions  * @APPLE_LICENSE_HEADER_END@
22*f6217f89SApple OSS Distributions  */
23*f6217f89SApple OSS Distributions 
24*f6217f89SApple OSS Distributions /*
25*f6217f89SApple OSS Distributions  * <inttypes.h> -- Standard C header, defined in ISO/IEC 9899:1999
26*f6217f89SApple OSS Distributions  * (aka "C99"), section 7.8.   This defines format string conversion
27*f6217f89SApple OSS Distributions  * specifiers suitable for use within arguments to fprintf and fscanf
28*f6217f89SApple OSS Distributions  * and their ilk.
29*f6217f89SApple OSS Distributions  */
30*f6217f89SApple OSS Distributions 
31*f6217f89SApple OSS Distributions #if !defined(__INTTYPES_H_)
32*f6217f89SApple OSS Distributions #define __INTTYPES_H_
33*f6217f89SApple OSS Distributions 
34*f6217f89SApple OSS Distributions #  define __PRI_8_LENGTH_MODIFIER__ "hh"
35*f6217f89SApple OSS Distributions #  define __PRI_64_LENGTH_MODIFIER__ "ll"
36*f6217f89SApple OSS Distributions #  define __SCN_64_LENGTH_MODIFIER__ "ll"
37*f6217f89SApple OSS Distributions #  define __PRI_MAX_LENGTH_MODIFIER__ "j"
38*f6217f89SApple OSS Distributions #  define __SCN_MAX_LENGTH_MODIFIER__ "j"
39*f6217f89SApple OSS Distributions 
40*f6217f89SApple OSS Distributions #  define PRId8         __PRI_8_LENGTH_MODIFIER__ "d"
41*f6217f89SApple OSS Distributions #  define PRIi8         __PRI_8_LENGTH_MODIFIER__ "i"
42*f6217f89SApple OSS Distributions #  define PRIo8         __PRI_8_LENGTH_MODIFIER__ "o"
43*f6217f89SApple OSS Distributions #  define PRIu8         __PRI_8_LENGTH_MODIFIER__ "u"
44*f6217f89SApple OSS Distributions #  define PRIx8         __PRI_8_LENGTH_MODIFIER__ "x"
45*f6217f89SApple OSS Distributions #  define PRIX8         __PRI_8_LENGTH_MODIFIER__ "X"
46*f6217f89SApple OSS Distributions 
47*f6217f89SApple OSS Distributions #  define PRId16        "hd"
48*f6217f89SApple OSS Distributions #  define PRIi16        "hi"
49*f6217f89SApple OSS Distributions #  define PRIo16        "ho"
50*f6217f89SApple OSS Distributions #  define PRIu16        "hu"
51*f6217f89SApple OSS Distributions #  define PRIx16        "hx"
52*f6217f89SApple OSS Distributions #  define PRIX16        "hX"
53*f6217f89SApple OSS Distributions 
54*f6217f89SApple OSS Distributions #  define PRId32        "d"
55*f6217f89SApple OSS Distributions #  define PRIi32        "i"
56*f6217f89SApple OSS Distributions #  define PRIo32        "o"
57*f6217f89SApple OSS Distributions #  define PRIu32        "u"
58*f6217f89SApple OSS Distributions #  define PRIx32        "x"
59*f6217f89SApple OSS Distributions #  define PRIX32        "X"
60*f6217f89SApple OSS Distributions 
61*f6217f89SApple OSS Distributions #  define PRId64        __PRI_64_LENGTH_MODIFIER__ "d"
62*f6217f89SApple OSS Distributions #  define PRIi64        __PRI_64_LENGTH_MODIFIER__ "i"
63*f6217f89SApple OSS Distributions #  define PRIo64        __PRI_64_LENGTH_MODIFIER__ "o"
64*f6217f89SApple OSS Distributions #  define PRIu64        __PRI_64_LENGTH_MODIFIER__ "u"
65*f6217f89SApple OSS Distributions #  define PRIx64        __PRI_64_LENGTH_MODIFIER__ "x"
66*f6217f89SApple OSS Distributions #  define PRIX64        __PRI_64_LENGTH_MODIFIER__ "X"
67*f6217f89SApple OSS Distributions 
68*f6217f89SApple OSS Distributions #  define PRIdLEAST8    PRId8
69*f6217f89SApple OSS Distributions #  define PRIiLEAST8    PRIi8
70*f6217f89SApple OSS Distributions #  define PRIoLEAST8    PRIo8
71*f6217f89SApple OSS Distributions #  define PRIuLEAST8    PRIu8
72*f6217f89SApple OSS Distributions #  define PRIxLEAST8    PRIx8
73*f6217f89SApple OSS Distributions #  define PRIXLEAST8    PRIX8
74*f6217f89SApple OSS Distributions 
75*f6217f89SApple OSS Distributions #  define PRIdLEAST16   PRId16
76*f6217f89SApple OSS Distributions #  define PRIiLEAST16   PRIi16
77*f6217f89SApple OSS Distributions #  define PRIoLEAST16   PRIo16
78*f6217f89SApple OSS Distributions #  define PRIuLEAST16   PRIu16
79*f6217f89SApple OSS Distributions #  define PRIxLEAST16   PRIx16
80*f6217f89SApple OSS Distributions #  define PRIXLEAST16   PRIX16
81*f6217f89SApple OSS Distributions 
82*f6217f89SApple OSS Distributions #  define PRIdLEAST32   PRId32
83*f6217f89SApple OSS Distributions #  define PRIiLEAST32   PRIi32
84*f6217f89SApple OSS Distributions #  define PRIoLEAST32   PRIo32
85*f6217f89SApple OSS Distributions #  define PRIuLEAST32   PRIu32
86*f6217f89SApple OSS Distributions #  define PRIxLEAST32   PRIx32
87*f6217f89SApple OSS Distributions #  define PRIXLEAST32   PRIX32
88*f6217f89SApple OSS Distributions 
89*f6217f89SApple OSS Distributions #  define PRIdLEAST64   PRId64
90*f6217f89SApple OSS Distributions #  define PRIiLEAST64   PRIi64
91*f6217f89SApple OSS Distributions #  define PRIoLEAST64   PRIo64
92*f6217f89SApple OSS Distributions #  define PRIuLEAST64   PRIu64
93*f6217f89SApple OSS Distributions #  define PRIxLEAST64   PRIx64
94*f6217f89SApple OSS Distributions #  define PRIXLEAST64   PRIX64
95*f6217f89SApple OSS Distributions 
96*f6217f89SApple OSS Distributions #  define PRIdFAST8     PRId8
97*f6217f89SApple OSS Distributions #  define PRIiFAST8     PRIi8
98*f6217f89SApple OSS Distributions #  define PRIoFAST8     PRIo8
99*f6217f89SApple OSS Distributions #  define PRIuFAST8     PRIu8
100*f6217f89SApple OSS Distributions #  define PRIxFAST8     PRIx8
101*f6217f89SApple OSS Distributions #  define PRIXFAST8     PRIX8
102*f6217f89SApple OSS Distributions 
103*f6217f89SApple OSS Distributions #  define PRIdFAST16    PRId16
104*f6217f89SApple OSS Distributions #  define PRIiFAST16    PRIi16
105*f6217f89SApple OSS Distributions #  define PRIoFAST16    PRIo16
106*f6217f89SApple OSS Distributions #  define PRIuFAST16    PRIu16
107*f6217f89SApple OSS Distributions #  define PRIxFAST16    PRIx16
108*f6217f89SApple OSS Distributions #  define PRIXFAST16    PRIX16
109*f6217f89SApple OSS Distributions 
110*f6217f89SApple OSS Distributions #  define PRIdFAST32    PRId32
111*f6217f89SApple OSS Distributions #  define PRIiFAST32    PRIi32
112*f6217f89SApple OSS Distributions #  define PRIoFAST32    PRIo32
113*f6217f89SApple OSS Distributions #  define PRIuFAST32    PRIu32
114*f6217f89SApple OSS Distributions #  define PRIxFAST32    PRIx32
115*f6217f89SApple OSS Distributions #  define PRIXFAST32    PRIX32
116*f6217f89SApple OSS Distributions 
117*f6217f89SApple OSS Distributions #  define PRIdFAST64    PRId64
118*f6217f89SApple OSS Distributions #  define PRIiFAST64    PRIi64
119*f6217f89SApple OSS Distributions #  define PRIoFAST64    PRIo64
120*f6217f89SApple OSS Distributions #  define PRIuFAST64    PRIu64
121*f6217f89SApple OSS Distributions #  define PRIxFAST64    PRIx64
122*f6217f89SApple OSS Distributions #  define PRIXFAST64    PRIX64
123*f6217f89SApple OSS Distributions 
124*f6217f89SApple OSS Distributions /* int32_t is 'int', but intptr_t is 'long'.  */
125*f6217f89SApple OSS Distributions #  define PRIdPTR       "ld"
126*f6217f89SApple OSS Distributions #  define PRIiPTR       "li"
127*f6217f89SApple OSS Distributions #  define PRIoPTR       "lo"
128*f6217f89SApple OSS Distributions #  define PRIuPTR       "lu"
129*f6217f89SApple OSS Distributions #  define PRIxPTR       "lx"
130*f6217f89SApple OSS Distributions #  define PRIXPTR       "lX"
131*f6217f89SApple OSS Distributions 
132*f6217f89SApple OSS Distributions #  define PRIdMAX        __PRI_MAX_LENGTH_MODIFIER__ "d"
133*f6217f89SApple OSS Distributions #  define PRIiMAX        __PRI_MAX_LENGTH_MODIFIER__ "i"
134*f6217f89SApple OSS Distributions #  define PRIoMAX        __PRI_MAX_LENGTH_MODIFIER__ "o"
135*f6217f89SApple OSS Distributions #  define PRIuMAX        __PRI_MAX_LENGTH_MODIFIER__ "u"
136*f6217f89SApple OSS Distributions #  define PRIxMAX        __PRI_MAX_LENGTH_MODIFIER__ "x"
137*f6217f89SApple OSS Distributions #  define PRIXMAX        __PRI_MAX_LENGTH_MODIFIER__ "X"
138*f6217f89SApple OSS Distributions 
139*f6217f89SApple OSS Distributions #  define SCNd8         __PRI_8_LENGTH_MODIFIER__ "d"
140*f6217f89SApple OSS Distributions #  define SCNi8         __PRI_8_LENGTH_MODIFIER__ "i"
141*f6217f89SApple OSS Distributions #  define SCNo8         __PRI_8_LENGTH_MODIFIER__ "o"
142*f6217f89SApple OSS Distributions #  define SCNu8         __PRI_8_LENGTH_MODIFIER__ "u"
143*f6217f89SApple OSS Distributions #  define SCNx8         __PRI_8_LENGTH_MODIFIER__ "x"
144*f6217f89SApple OSS Distributions 
145*f6217f89SApple OSS Distributions #  define SCNd16        "hd"
146*f6217f89SApple OSS Distributions #  define SCNi16        "hi"
147*f6217f89SApple OSS Distributions #  define SCNo16        "ho"
148*f6217f89SApple OSS Distributions #  define SCNu16        "hu"
149*f6217f89SApple OSS Distributions #  define SCNx16        "hx"
150*f6217f89SApple OSS Distributions 
151*f6217f89SApple OSS Distributions #  define SCNd32        "d"
152*f6217f89SApple OSS Distributions #  define SCNi32        "i"
153*f6217f89SApple OSS Distributions #  define SCNo32        "o"
154*f6217f89SApple OSS Distributions #  define SCNu32        "u"
155*f6217f89SApple OSS Distributions #  define SCNx32        "x"
156*f6217f89SApple OSS Distributions 
157*f6217f89SApple OSS Distributions #  define SCNd64        __SCN_64_LENGTH_MODIFIER__ "d"
158*f6217f89SApple OSS Distributions #  define SCNi64        __SCN_64_LENGTH_MODIFIER__ "i"
159*f6217f89SApple OSS Distributions #  define SCNo64        __SCN_64_LENGTH_MODIFIER__ "o"
160*f6217f89SApple OSS Distributions #  define SCNu64        __SCN_64_LENGTH_MODIFIER__ "u"
161*f6217f89SApple OSS Distributions #  define SCNx64        __SCN_64_LENGTH_MODIFIER__ "x"
162*f6217f89SApple OSS Distributions 
163*f6217f89SApple OSS Distributions #  define SCNdLEAST8    SCNd8
164*f6217f89SApple OSS Distributions #  define SCNiLEAST8    SCNi8
165*f6217f89SApple OSS Distributions #  define SCNoLEAST8    SCNo8
166*f6217f89SApple OSS Distributions #  define SCNuLEAST8    SCNu8
167*f6217f89SApple OSS Distributions #  define SCNxLEAST8    SCNx8
168*f6217f89SApple OSS Distributions 
169*f6217f89SApple OSS Distributions #  define SCNdLEAST16   SCNd16
170*f6217f89SApple OSS Distributions #  define SCNiLEAST16   SCNi16
171*f6217f89SApple OSS Distributions #  define SCNoLEAST16   SCNo16
172*f6217f89SApple OSS Distributions #  define SCNuLEAST16   SCNu16
173*f6217f89SApple OSS Distributions #  define SCNxLEAST16   SCNx16
174*f6217f89SApple OSS Distributions 
175*f6217f89SApple OSS Distributions #  define SCNdLEAST32   SCNd32
176*f6217f89SApple OSS Distributions #  define SCNiLEAST32   SCNi32
177*f6217f89SApple OSS Distributions #  define SCNoLEAST32   SCNo32
178*f6217f89SApple OSS Distributions #  define SCNuLEAST32   SCNu32
179*f6217f89SApple OSS Distributions #  define SCNxLEAST32   SCNx32
180*f6217f89SApple OSS Distributions 
181*f6217f89SApple OSS Distributions #  define SCNdLEAST64   SCNd64
182*f6217f89SApple OSS Distributions #  define SCNiLEAST64   SCNi64
183*f6217f89SApple OSS Distributions #  define SCNoLEAST64   SCNo64
184*f6217f89SApple OSS Distributions #  define SCNuLEAST64   SCNu64
185*f6217f89SApple OSS Distributions #  define SCNxLEAST64   SCNx64
186*f6217f89SApple OSS Distributions 
187*f6217f89SApple OSS Distributions #  define SCNdFAST8     SCNd8
188*f6217f89SApple OSS Distributions #  define SCNiFAST8     SCNi8
189*f6217f89SApple OSS Distributions #  define SCNoFAST8     SCNo8
190*f6217f89SApple OSS Distributions #  define SCNuFAST8     SCNu8
191*f6217f89SApple OSS Distributions #  define SCNxFAST8     SCNx8
192*f6217f89SApple OSS Distributions 
193*f6217f89SApple OSS Distributions #  define SCNdFAST16    SCNd16
194*f6217f89SApple OSS Distributions #  define SCNiFAST16    SCNi16
195*f6217f89SApple OSS Distributions #  define SCNoFAST16    SCNo16
196*f6217f89SApple OSS Distributions #  define SCNuFAST16    SCNu16
197*f6217f89SApple OSS Distributions #  define SCNxFAST16    SCNx16
198*f6217f89SApple OSS Distributions 
199*f6217f89SApple OSS Distributions #  define SCNdFAST32    SCNd32
200*f6217f89SApple OSS Distributions #  define SCNiFAST32    SCNi32
201*f6217f89SApple OSS Distributions #  define SCNoFAST32    SCNo32
202*f6217f89SApple OSS Distributions #  define SCNuFAST32    SCNu32
203*f6217f89SApple OSS Distributions #  define SCNxFAST32    SCNx32
204*f6217f89SApple OSS Distributions 
205*f6217f89SApple OSS Distributions #  define SCNdFAST64    SCNd64
206*f6217f89SApple OSS Distributions #  define SCNiFAST64    SCNi64
207*f6217f89SApple OSS Distributions #  define SCNoFAST64    SCNo64
208*f6217f89SApple OSS Distributions #  define SCNuFAST64    SCNu64
209*f6217f89SApple OSS Distributions #  define SCNxFAST64    SCNx64
210*f6217f89SApple OSS Distributions 
211*f6217f89SApple OSS Distributions #  define SCNdPTR       "ld"
212*f6217f89SApple OSS Distributions #  define SCNiPTR       "li"
213*f6217f89SApple OSS Distributions #  define SCNoPTR       "lo"
214*f6217f89SApple OSS Distributions #  define SCNuPTR       "lu"
215*f6217f89SApple OSS Distributions #  define SCNxPTR       "lx"
216*f6217f89SApple OSS Distributions 
217*f6217f89SApple OSS Distributions #  define SCNdMAX       __SCN_MAX_LENGTH_MODIFIER__ "d"
218*f6217f89SApple OSS Distributions #  define SCNiMAX       __SCN_MAX_LENGTH_MODIFIER__ "i"
219*f6217f89SApple OSS Distributions #  define SCNoMAX       __SCN_MAX_LENGTH_MODIFIER__ "o"
220*f6217f89SApple OSS Distributions #  define SCNuMAX       __SCN_MAX_LENGTH_MODIFIER__ "u"
221*f6217f89SApple OSS Distributions #  define SCNxMAX       __SCN_MAX_LENGTH_MODIFIER__ "x"
222*f6217f89SApple OSS Distributions 
223*f6217f89SApple OSS Distributions #include <stdint.h>
224*f6217f89SApple OSS Distributions 
225*f6217f89SApple OSS Distributions #endif /* !__INTTYPES_H_ */
226