18d7e7a98SRuslan Bukin /*- 28d7e7a98SRuslan Bukin * Copyright (c) 2001 The NetBSD Foundation, Inc. 38d7e7a98SRuslan Bukin * All rights reserved. 48d7e7a98SRuslan Bukin * 58d7e7a98SRuslan Bukin * This code is derived from software contributed to The NetBSD Foundation 68d7e7a98SRuslan Bukin * by Klaus Klein. 78d7e7a98SRuslan Bukin * 88d7e7a98SRuslan Bukin * Redistribution and use in source and binary forms, with or without 98d7e7a98SRuslan Bukin * modification, are permitted provided that the following conditions 108d7e7a98SRuslan Bukin * are met: 118d7e7a98SRuslan Bukin * 1. Redistributions of source code must retain the above copyright 128d7e7a98SRuslan Bukin * notice, this list of conditions and the following disclaimer. 138d7e7a98SRuslan Bukin * 2. Redistributions in binary form must reproduce the above copyright 148d7e7a98SRuslan Bukin * notice, this list of conditions and the following disclaimer in the 158d7e7a98SRuslan Bukin * documentation and/or other materials provided with the distribution. 168d7e7a98SRuslan Bukin * 178d7e7a98SRuslan Bukin * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS 188d7e7a98SRuslan Bukin * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED 198d7e7a98SRuslan Bukin * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 208d7e7a98SRuslan Bukin * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS 218d7e7a98SRuslan Bukin * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 228d7e7a98SRuslan Bukin * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 238d7e7a98SRuslan Bukin * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 248d7e7a98SRuslan Bukin * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 258d7e7a98SRuslan Bukin * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 268d7e7a98SRuslan Bukin * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 278d7e7a98SRuslan Bukin * POSSIBILITY OF SUCH DAMAGE. 288d7e7a98SRuslan Bukin * 298d7e7a98SRuslan Bukin * From: $NetBSD: int_fmtio.h,v 1.4 2008/04/28 20:23:36 martin Exp $ 308d7e7a98SRuslan Bukin */ 318d7e7a98SRuslan Bukin 328d7e7a98SRuslan Bukin #ifndef _MACHINE__INTTYPES_H_ 338d7e7a98SRuslan Bukin #define _MACHINE__INTTYPES_H_ 348d7e7a98SRuslan Bukin 358d7e7a98SRuslan Bukin /* 368d7e7a98SRuslan Bukin * Macros for format specifiers. 378d7e7a98SRuslan Bukin */ 388d7e7a98SRuslan Bukin 398d7e7a98SRuslan Bukin /* fprintf(3) macros for signed integers. */ 408d7e7a98SRuslan Bukin 418d7e7a98SRuslan Bukin #define PRId8 "d" /* int8_t */ 428d7e7a98SRuslan Bukin #define PRId16 "d" /* int16_t */ 438d7e7a98SRuslan Bukin #define PRId32 "d" /* int32_t */ 448d7e7a98SRuslan Bukin #define PRId64 "ld" /* int64_t */ 458d7e7a98SRuslan Bukin #define PRIdLEAST8 "d" /* int_least8_t */ 468d7e7a98SRuslan Bukin #define PRIdLEAST16 "d" /* int_least16_t */ 478d7e7a98SRuslan Bukin #define PRIdLEAST32 "d" /* int_least32_t */ 488d7e7a98SRuslan Bukin #define PRIdLEAST64 "ld" /* int_least64_t */ 498d7e7a98SRuslan Bukin #define PRIdFAST8 "d" /* int_fast8_t */ 508d7e7a98SRuslan Bukin #define PRIdFAST16 "d" /* int_fast16_t */ 518d7e7a98SRuslan Bukin #define PRIdFAST32 "d" /* int_fast32_t */ 528d7e7a98SRuslan Bukin #define PRIdFAST64 "ld" /* int_fast64_t */ 538d7e7a98SRuslan Bukin #define PRIdMAX "jd" /* intmax_t */ 548d7e7a98SRuslan Bukin #define PRIdPTR "ld" /* intptr_t */ 558d7e7a98SRuslan Bukin 568d7e7a98SRuslan Bukin #define PRIi8 "i" /* int8_t */ 578d7e7a98SRuslan Bukin #define PRIi16 "i" /* int16_t */ 588d7e7a98SRuslan Bukin #define PRIi32 "i" /* int32_t */ 598d7e7a98SRuslan Bukin #define PRIi64 "li" /* int64_t */ 608d7e7a98SRuslan Bukin #define PRIiLEAST8 "i" /* int_least8_t */ 618d7e7a98SRuslan Bukin #define PRIiLEAST16 "i" /* int_least16_t */ 628d7e7a98SRuslan Bukin #define PRIiLEAST32 "i" /* int_least32_t */ 638d7e7a98SRuslan Bukin #define PRIiLEAST64 "li" /* int_least64_t */ 648d7e7a98SRuslan Bukin #define PRIiFAST8 "i" /* int_fast8_t */ 658d7e7a98SRuslan Bukin #define PRIiFAST16 "i" /* int_fast16_t */ 668d7e7a98SRuslan Bukin #define PRIiFAST32 "i" /* int_fast32_t */ 678d7e7a98SRuslan Bukin #define PRIiFAST64 "li" /* int_fast64_t */ 688d7e7a98SRuslan Bukin #define PRIiMAX "ji" /* intmax_t */ 698d7e7a98SRuslan Bukin #define PRIiPTR "li" /* intptr_t */ 708d7e7a98SRuslan Bukin 718d7e7a98SRuslan Bukin /* fprintf(3) macros for unsigned integers. */ 728d7e7a98SRuslan Bukin 738d7e7a98SRuslan Bukin #define PRIo8 "o" /* uint8_t */ 748d7e7a98SRuslan Bukin #define PRIo16 "o" /* uint16_t */ 758d7e7a98SRuslan Bukin #define PRIo32 "o" /* uint32_t */ 768d7e7a98SRuslan Bukin #define PRIo64 "lo" /* uint64_t */ 778d7e7a98SRuslan Bukin #define PRIoLEAST8 "o" /* uint_least8_t */ 788d7e7a98SRuslan Bukin #define PRIoLEAST16 "o" /* uint_least16_t */ 798d7e7a98SRuslan Bukin #define PRIoLEAST32 "o" /* uint_least32_t */ 808d7e7a98SRuslan Bukin #define PRIoLEAST64 "lo" /* uint_least64_t */ 818d7e7a98SRuslan Bukin #define PRIoFAST8 "o" /* uint_fast8_t */ 828d7e7a98SRuslan Bukin #define PRIoFAST16 "o" /* uint_fast16_t */ 838d7e7a98SRuslan Bukin #define PRIoFAST32 "o" /* uint_fast32_t */ 848d7e7a98SRuslan Bukin #define PRIoFAST64 "lo" /* uint_fast64_t */ 858d7e7a98SRuslan Bukin #define PRIoMAX "jo" /* uintmax_t */ 868d7e7a98SRuslan Bukin #define PRIoPTR "lo" /* uintptr_t */ 878d7e7a98SRuslan Bukin 888d7e7a98SRuslan Bukin #define PRIu8 "u" /* uint8_t */ 898d7e7a98SRuslan Bukin #define PRIu16 "u" /* uint16_t */ 908d7e7a98SRuslan Bukin #define PRIu32 "u" /* uint32_t */ 918d7e7a98SRuslan Bukin #define PRIu64 "lu" /* uint64_t */ 928d7e7a98SRuslan Bukin #define PRIuLEAST8 "u" /* uint_least8_t */ 938d7e7a98SRuslan Bukin #define PRIuLEAST16 "u" /* uint_least16_t */ 948d7e7a98SRuslan Bukin #define PRIuLEAST32 "u" /* uint_least32_t */ 958d7e7a98SRuslan Bukin #define PRIuLEAST64 "lu" /* uint_least64_t */ 968d7e7a98SRuslan Bukin #define PRIuFAST8 "u" /* uint_fast8_t */ 978d7e7a98SRuslan Bukin #define PRIuFAST16 "u" /* uint_fast16_t */ 988d7e7a98SRuslan Bukin #define PRIuFAST32 "u" /* uint_fast32_t */ 998d7e7a98SRuslan Bukin #define PRIuFAST64 "lu" /* uint_fast64_t */ 1008d7e7a98SRuslan Bukin #define PRIuMAX "ju" /* uintmax_t */ 1018d7e7a98SRuslan Bukin #define PRIuPTR "lu" /* uintptr_t */ 1028d7e7a98SRuslan Bukin 1038d7e7a98SRuslan Bukin #define PRIx8 "x" /* uint8_t */ 1048d7e7a98SRuslan Bukin #define PRIx16 "x" /* uint16_t */ 1058d7e7a98SRuslan Bukin #define PRIx32 "x" /* uint32_t */ 1068d7e7a98SRuslan Bukin #define PRIx64 "lx" /* uint64_t */ 1078d7e7a98SRuslan Bukin #define PRIxLEAST8 "x" /* uint_least8_t */ 1088d7e7a98SRuslan Bukin #define PRIxLEAST16 "x" /* uint_least16_t */ 1098d7e7a98SRuslan Bukin #define PRIxLEAST32 "x" /* uint_least32_t */ 1108d7e7a98SRuslan Bukin #define PRIxLEAST64 "lx" /* uint_least64_t */ 1118d7e7a98SRuslan Bukin #define PRIxFAST8 "x" /* uint_fast8_t */ 1128d7e7a98SRuslan Bukin #define PRIxFAST16 "x" /* uint_fast16_t */ 1138d7e7a98SRuslan Bukin #define PRIxFAST32 "x" /* uint_fast32_t */ 1148d7e7a98SRuslan Bukin #define PRIxFAST64 "lx" /* uint_fast64_t */ 1158d7e7a98SRuslan Bukin #define PRIxMAX "jx" /* uintmax_t */ 1168d7e7a98SRuslan Bukin #define PRIxPTR "lx" /* uintptr_t */ 1178d7e7a98SRuslan Bukin 1188d7e7a98SRuslan Bukin #define PRIX8 "X" /* uint8_t */ 1198d7e7a98SRuslan Bukin #define PRIX16 "X" /* uint16_t */ 1208d7e7a98SRuslan Bukin #define PRIX32 "X" /* uint32_t */ 1218d7e7a98SRuslan Bukin #define PRIX64 "lX" /* uint64_t */ 1228d7e7a98SRuslan Bukin #define PRIXLEAST8 "X" /* uint_least8_t */ 1238d7e7a98SRuslan Bukin #define PRIXLEAST16 "X" /* uint_least16_t */ 1248d7e7a98SRuslan Bukin #define PRIXLEAST32 "X" /* uint_least32_t */ 1258d7e7a98SRuslan Bukin #define PRIXLEAST64 "lX" /* uint_least64_t */ 1268d7e7a98SRuslan Bukin #define PRIXFAST8 "X" /* uint_fast8_t */ 1278d7e7a98SRuslan Bukin #define PRIXFAST16 "X" /* uint_fast16_t */ 1288d7e7a98SRuslan Bukin #define PRIXFAST32 "X" /* uint_fast32_t */ 1298d7e7a98SRuslan Bukin #define PRIXFAST64 "lX" /* uint_fast64_t */ 1308d7e7a98SRuslan Bukin #define PRIXMAX "jX" /* uintmax_t */ 1318d7e7a98SRuslan Bukin #define PRIXPTR "lX" /* uintptr_t */ 1328d7e7a98SRuslan Bukin 1338d7e7a98SRuslan Bukin /* fscanf(3) macros for signed integers. */ 1348d7e7a98SRuslan Bukin 1358d7e7a98SRuslan Bukin #define SCNd8 "hhd" /* int8_t */ 1368d7e7a98SRuslan Bukin #define SCNd16 "hd" /* int16_t */ 1378d7e7a98SRuslan Bukin #define SCNd32 "d" /* int32_t */ 1388d7e7a98SRuslan Bukin #define SCNd64 "ld" /* int64_t */ 1398d7e7a98SRuslan Bukin #define SCNdLEAST8 "hhd" /* int_least8_t */ 1408d7e7a98SRuslan Bukin #define SCNdLEAST16 "hd" /* int_least16_t */ 1418d7e7a98SRuslan Bukin #define SCNdLEAST32 "d" /* int_least32_t */ 1428d7e7a98SRuslan Bukin #define SCNdLEAST64 "ld" /* int_least64_t */ 1438d7e7a98SRuslan Bukin #define SCNdFAST8 "d" /* int_fast8_t */ 1448d7e7a98SRuslan Bukin #define SCNdFAST16 "d" /* int_fast16_t */ 1458d7e7a98SRuslan Bukin #define SCNdFAST32 "d" /* int_fast32_t */ 1468d7e7a98SRuslan Bukin #define SCNdFAST64 "ld" /* int_fast64_t */ 1478d7e7a98SRuslan Bukin #define SCNdMAX "jd" /* intmax_t */ 1488d7e7a98SRuslan Bukin #define SCNdPTR "ld" /* intptr_t */ 1498d7e7a98SRuslan Bukin 1508d7e7a98SRuslan Bukin #define SCNi8 "hhi" /* int8_t */ 1518d7e7a98SRuslan Bukin #define SCNi16 "hi" /* int16_t */ 1528d7e7a98SRuslan Bukin #define SCNi32 "i" /* int32_t */ 1538d7e7a98SRuslan Bukin #define SCNi64 "li" /* int64_t */ 1548d7e7a98SRuslan Bukin #define SCNiLEAST8 "hhi" /* int_least8_t */ 1558d7e7a98SRuslan Bukin #define SCNiLEAST16 "hi" /* int_least16_t */ 1568d7e7a98SRuslan Bukin #define SCNiLEAST32 "i" /* int_least32_t */ 1578d7e7a98SRuslan Bukin #define SCNiLEAST64 "li" /* int_least64_t */ 1588d7e7a98SRuslan Bukin #define SCNiFAST8 "i" /* int_fast8_t */ 1598d7e7a98SRuslan Bukin #define SCNiFAST16 "i" /* int_fast16_t */ 1608d7e7a98SRuslan Bukin #define SCNiFAST32 "i" /* int_fast32_t */ 1618d7e7a98SRuslan Bukin #define SCNiFAST64 "li" /* int_fast64_t */ 1628d7e7a98SRuslan Bukin #define SCNiMAX "ji" /* intmax_t */ 1638d7e7a98SRuslan Bukin #define SCNiPTR "li" /* intptr_t */ 1648d7e7a98SRuslan Bukin 1658d7e7a98SRuslan Bukin /* fscanf(3) macros for unsigned integers. */ 1668d7e7a98SRuslan Bukin 1678d7e7a98SRuslan Bukin #define SCNo8 "hho" /* uint8_t */ 1688d7e7a98SRuslan Bukin #define SCNo16 "ho" /* uint16_t */ 1698d7e7a98SRuslan Bukin #define SCNo32 "o" /* uint32_t */ 1708d7e7a98SRuslan Bukin #define SCNo64 "lo" /* uint64_t */ 1718d7e7a98SRuslan Bukin #define SCNoLEAST8 "hho" /* uint_least8_t */ 1728d7e7a98SRuslan Bukin #define SCNoLEAST16 "ho" /* uint_least16_t */ 1738d7e7a98SRuslan Bukin #define SCNoLEAST32 "o" /* uint_least32_t */ 1748d7e7a98SRuslan Bukin #define SCNoLEAST64 "lo" /* uint_least64_t */ 1758d7e7a98SRuslan Bukin #define SCNoFAST8 "o" /* uint_fast8_t */ 1768d7e7a98SRuslan Bukin #define SCNoFAST16 "o" /* uint_fast16_t */ 1778d7e7a98SRuslan Bukin #define SCNoFAST32 "o" /* uint_fast32_t */ 1788d7e7a98SRuslan Bukin #define SCNoFAST64 "lo" /* uint_fast64_t */ 1798d7e7a98SRuslan Bukin #define SCNoMAX "jo" /* uintmax_t */ 1808d7e7a98SRuslan Bukin #define SCNoPTR "lo" /* uintptr_t */ 1818d7e7a98SRuslan Bukin 1828d7e7a98SRuslan Bukin #define SCNu8 "hhu" /* uint8_t */ 1838d7e7a98SRuslan Bukin #define SCNu16 "hu" /* uint16_t */ 1848d7e7a98SRuslan Bukin #define SCNu32 "u" /* uint32_t */ 1858d7e7a98SRuslan Bukin #define SCNu64 "lu" /* uint64_t */ 1868d7e7a98SRuslan Bukin #define SCNuLEAST8 "hhu" /* uint_least8_t */ 1878d7e7a98SRuslan Bukin #define SCNuLEAST16 "hu" /* uint_least16_t */ 1888d7e7a98SRuslan Bukin #define SCNuLEAST32 "u" /* uint_least32_t */ 1898d7e7a98SRuslan Bukin #define SCNuLEAST64 "lu" /* uint_least64_t */ 1908d7e7a98SRuslan Bukin #define SCNuFAST8 "u" /* uint_fast8_t */ 1918d7e7a98SRuslan Bukin #define SCNuFAST16 "u" /* uint_fast16_t */ 1928d7e7a98SRuslan Bukin #define SCNuFAST32 "u" /* uint_fast32_t */ 1938d7e7a98SRuslan Bukin #define SCNuFAST64 "lu" /* uint_fast64_t */ 1948d7e7a98SRuslan Bukin #define SCNuMAX "ju" /* uintmax_t */ 1958d7e7a98SRuslan Bukin #define SCNuPTR "lu" /* uintptr_t */ 1968d7e7a98SRuslan Bukin 1978d7e7a98SRuslan Bukin #define SCNx8 "hhx" /* uint8_t */ 1988d7e7a98SRuslan Bukin #define SCNx16 "hx" /* uint16_t */ 1998d7e7a98SRuslan Bukin #define SCNx32 "x" /* uint32_t */ 2008d7e7a98SRuslan Bukin #define SCNx64 "lx" /* uint64_t */ 2018d7e7a98SRuslan Bukin #define SCNxLEAST8 "hhx" /* uint_least8_t */ 2028d7e7a98SRuslan Bukin #define SCNxLEAST16 "hx" /* uint_least16_t */ 2038d7e7a98SRuslan Bukin #define SCNxLEAST32 "x" /* uint_least32_t */ 2048d7e7a98SRuslan Bukin #define SCNxLEAST64 "lx" /* uint_least64_t */ 2058d7e7a98SRuslan Bukin #define SCNxFAST8 "x" /* uint_fast8_t */ 2068d7e7a98SRuslan Bukin #define SCNxFAST16 "x" /* uint_fast16_t */ 2078d7e7a98SRuslan Bukin #define SCNxFAST32 "x" /* uint_fast32_t */ 2088d7e7a98SRuslan Bukin #define SCNxFAST64 "lx" /* uint_fast64_t */ 2098d7e7a98SRuslan Bukin #define SCNxMAX "jx" /* uintmax_t */ 2108d7e7a98SRuslan Bukin #define SCNxPTR "lx" /* uintptr_t */ 2118d7e7a98SRuslan Bukin 2128d7e7a98SRuslan Bukin #endif /* !_MACHINE__INTTYPES_H_ */ 213