276 lines · plain
1// -*- C++ -*-2//===----------------------------------------------------------------------===//3//4// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.5// See https://llvm.org/LICENSE.txt for license information.6// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception7//8//===----------------------------------------------------------------------===//9 10#ifndef _LIBCPP_CINTTYPES11#define _LIBCPP_CINTTYPES12 13/*14 cinttypes synopsis15 16This entire header is C99 / C++0X17 18#include <cstdint> // <cinttypes> includes <cstdint>19 20Macros:21 22 PRId823 PRId1624 PRId3225 PRId6426 27 PRIdLEAST828 PRIdLEAST1629 PRIdLEAST3230 PRIdLEAST6431 32 PRIdFAST833 PRIdFAST1634 PRIdFAST3235 PRIdFAST6436 37 PRIdMAX38 PRIdPTR39 40 PRIi841 PRIi1642 PRIi3243 PRIi6444 45 PRIiLEAST846 PRIiLEAST1647 PRIiLEAST3248 PRIiLEAST6449 50 PRIiFAST851 PRIiFAST1652 PRIiFAST3253 PRIiFAST6454 55 PRIiMAX56 PRIiPTR57 58 PRIo859 PRIo1660 PRIo3261 PRIo6462 63 PRIoLEAST864 PRIoLEAST1665 PRIoLEAST3266 PRIoLEAST6467 68 PRIoFAST869 PRIoFAST1670 PRIoFAST3271 PRIoFAST6472 73 PRIoMAX74 PRIoPTR75 76 PRIu877 PRIu1678 PRIu3279 PRIu6480 81 PRIuLEAST882 PRIuLEAST1683 PRIuLEAST3284 PRIuLEAST6485 86 PRIuFAST887 PRIuFAST1688 PRIuFAST3289 PRIuFAST6490 91 PRIuMAX92 PRIuPTR93 94 PRIx895 PRIx1696 PRIx3297 PRIx6498 99 PRIxLEAST8100 PRIxLEAST16101 PRIxLEAST32102 PRIxLEAST64103 104 PRIxFAST8105 PRIxFAST16106 PRIxFAST32107 PRIxFAST64108 109 PRIxMAX110 PRIxPTR111 112 PRIX8113 PRIX16114 PRIX32115 PRIX64116 117 PRIXLEAST8118 PRIXLEAST16119 PRIXLEAST32120 PRIXLEAST64121 122 PRIXFAST8123 PRIXFAST16124 PRIXFAST32125 PRIXFAST64126 127 PRIXMAX128 PRIXPTR129 130 SCNd8131 SCNd16132 SCNd32133 SCNd64134 135 SCNdLEAST8136 SCNdLEAST16137 SCNdLEAST32138 SCNdLEAST64139 140 SCNdFAST8141 SCNdFAST16142 SCNdFAST32143 SCNdFAST64144 145 SCNdMAX146 SCNdPTR147 148 SCNi8149 SCNi16150 SCNi32151 SCNi64152 153 SCNiLEAST8154 SCNiLEAST16155 SCNiLEAST32156 SCNiLEAST64157 158 SCNiFAST8159 SCNiFAST16160 SCNiFAST32161 SCNiFAST64162 163 SCNiMAX164 SCNiPTR165 166 SCNo8167 SCNo16168 SCNo32169 SCNo64170 171 SCNoLEAST8172 SCNoLEAST16173 SCNoLEAST32174 SCNoLEAST64175 176 SCNoFAST8177 SCNoFAST16178 SCNoFAST32179 SCNoFAST64180 181 SCNoMAX182 SCNoPTR183 184 SCNu8185 SCNu16186 SCNu32187 SCNu64188 189 SCNuLEAST8190 SCNuLEAST16191 SCNuLEAST32192 SCNuLEAST64193 194 SCNuFAST8195 SCNuFAST16196 SCNuFAST32197 SCNuFAST64198 199 SCNuMAX200 SCNuPTR201 202 SCNx8203 SCNx16204 SCNx32205 SCNx64206 207 SCNxLEAST8208 SCNxLEAST16209 SCNxLEAST32210 SCNxLEAST64211 212 SCNxFAST8213 SCNxFAST16214 SCNxFAST32215 SCNxFAST64216 217 SCNxMAX218 SCNxPTR219 220namespace std221{222 223Types:224 225 imaxdiv_t226 227intmax_t imaxabs(intmax_t j);228imaxdiv_t imaxdiv(intmax_t numer, intmax_t denom);229intmax_t strtoimax(const char* restrict nptr, char** restrict endptr, int base);230uintmax_t strtoumax(const char* restrict nptr, char** restrict endptr, int base);231intmax_t wcstoimax(const wchar_t* restrict nptr, wchar_t** restrict endptr, int base);232uintmax_t wcstoumax(const wchar_t* restrict nptr, wchar_t** restrict endptr, int base);233 234} // std235*/236 237#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)238# include <__cxx03/cinttypes>239#else240# include <__config>241 242// standard-mandated includes243 244// [cinttypes.syn]245# include <cstdint>246 247# include <inttypes.h>248 249# ifndef _LIBCPP_INTTYPES_H250# error <cinttypes> tried including <inttypes.h> but didn't find libc++'s <inttypes.h> header. \251 This usually means that your header search paths are not configured properly. \252 The header search paths should contain the C++ Standard Library headers before \253 any C Standard Library, and you are probably using compiler flags that make that \254 not be the case.255# endif256 257# if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)258# pragma GCC system_header259# endif260 261_LIBCPP_BEGIN_NAMESPACE_STD262 263using ::imaxdiv_t _LIBCPP_USING_IF_EXISTS;264using ::imaxabs _LIBCPP_USING_IF_EXISTS;265using ::imaxdiv _LIBCPP_USING_IF_EXISTS;266using ::strtoimax _LIBCPP_USING_IF_EXISTS;267using ::strtoumax _LIBCPP_USING_IF_EXISTS;268using ::wcstoimax _LIBCPP_USING_IF_EXISTS;269using ::wcstoumax _LIBCPP_USING_IF_EXISTS;270 271_LIBCPP_END_NAMESPACE_STD272 273#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)274 275#endif // _LIBCPP_CINTTYPES276