146035553Spatrick// -*- C++ -*- 2*4bdff4beSrobert//===----------------------------------------------------------------------===// 346035553Spatrick// 446035553Spatrick// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 546035553Spatrick// See https://llvm.org/LICENSE.txt for license information. 646035553Spatrick// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 746035553Spatrick// 846035553Spatrick//===----------------------------------------------------------------------===// 946035553Spatrick 1046035553Spatrick#ifndef _LIBCPP_CSTDINT 1146035553Spatrick#define _LIBCPP_CSTDINT 1246035553Spatrick 1346035553Spatrick/* 1446035553Spatrick cstdint synopsis 1546035553Spatrick 1646035553SpatrickMacros: 1746035553Spatrick 1846035553Spatrick INT8_MIN 1946035553Spatrick INT16_MIN 2046035553Spatrick INT32_MIN 2146035553Spatrick INT64_MIN 2246035553Spatrick 2346035553Spatrick INT8_MAX 2446035553Spatrick INT16_MAX 2546035553Spatrick INT32_MAX 2646035553Spatrick INT64_MAX 2746035553Spatrick 2846035553Spatrick UINT8_MAX 2946035553Spatrick UINT16_MAX 3046035553Spatrick UINT32_MAX 3146035553Spatrick UINT64_MAX 3246035553Spatrick 3346035553Spatrick INT_LEAST8_MIN 3446035553Spatrick INT_LEAST16_MIN 3546035553Spatrick INT_LEAST32_MIN 3646035553Spatrick INT_LEAST64_MIN 3746035553Spatrick 3846035553Spatrick INT_LEAST8_MAX 3946035553Spatrick INT_LEAST16_MAX 4046035553Spatrick INT_LEAST32_MAX 4146035553Spatrick INT_LEAST64_MAX 4246035553Spatrick 4346035553Spatrick UINT_LEAST8_MAX 4446035553Spatrick UINT_LEAST16_MAX 4546035553Spatrick UINT_LEAST32_MAX 4646035553Spatrick UINT_LEAST64_MAX 4746035553Spatrick 4846035553Spatrick INT_FAST8_MIN 4946035553Spatrick INT_FAST16_MIN 5046035553Spatrick INT_FAST32_MIN 5146035553Spatrick INT_FAST64_MIN 5246035553Spatrick 5346035553Spatrick INT_FAST8_MAX 5446035553Spatrick INT_FAST16_MAX 5546035553Spatrick INT_FAST32_MAX 5646035553Spatrick INT_FAST64_MAX 5746035553Spatrick 5846035553Spatrick UINT_FAST8_MAX 5946035553Spatrick UINT_FAST16_MAX 6046035553Spatrick UINT_FAST32_MAX 6146035553Spatrick UINT_FAST64_MAX 6246035553Spatrick 6346035553Spatrick INTPTR_MIN 6446035553Spatrick INTPTR_MAX 6546035553Spatrick UINTPTR_MAX 6646035553Spatrick 6746035553Spatrick INTMAX_MIN 6846035553Spatrick INTMAX_MAX 6946035553Spatrick 7046035553Spatrick UINTMAX_MAX 7146035553Spatrick 7246035553Spatrick PTRDIFF_MIN 7346035553Spatrick PTRDIFF_MAX 7446035553Spatrick 7546035553Spatrick SIG_ATOMIC_MIN 7646035553Spatrick SIG_ATOMIC_MAX 7746035553Spatrick 7846035553Spatrick SIZE_MAX 7946035553Spatrick 8046035553Spatrick WCHAR_MIN 8146035553Spatrick WCHAR_MAX 8246035553Spatrick 8346035553Spatrick WINT_MIN 8446035553Spatrick WINT_MAX 8546035553Spatrick 8646035553Spatrick INT8_C(value) 8746035553Spatrick INT16_C(value) 8846035553Spatrick INT32_C(value) 8946035553Spatrick INT64_C(value) 9046035553Spatrick 9146035553Spatrick UINT8_C(value) 9246035553Spatrick UINT16_C(value) 9346035553Spatrick UINT32_C(value) 9446035553Spatrick UINT64_C(value) 9546035553Spatrick 9646035553Spatrick INTMAX_C(value) 9746035553Spatrick UINTMAX_C(value) 9846035553Spatrick 9946035553Spatricknamespace std 10046035553Spatrick{ 10146035553Spatrick 10246035553SpatrickTypes: 10346035553Spatrick 10446035553Spatrick int8_t 10546035553Spatrick int16_t 10646035553Spatrick int32_t 10746035553Spatrick int64_t 10846035553Spatrick 10946035553Spatrick uint8_t 11046035553Spatrick uint16_t 11146035553Spatrick uint32_t 11246035553Spatrick uint64_t 11346035553Spatrick 11446035553Spatrick int_least8_t 11546035553Spatrick int_least16_t 11646035553Spatrick int_least32_t 11746035553Spatrick int_least64_t 11846035553Spatrick 11946035553Spatrick uint_least8_t 12046035553Spatrick uint_least16_t 12146035553Spatrick uint_least32_t 12246035553Spatrick uint_least64_t 12346035553Spatrick 12446035553Spatrick int_fast8_t 12546035553Spatrick int_fast16_t 12646035553Spatrick int_fast32_t 12746035553Spatrick int_fast64_t 12846035553Spatrick 12946035553Spatrick uint_fast8_t 13046035553Spatrick uint_fast16_t 13146035553Spatrick uint_fast32_t 13246035553Spatrick uint_fast64_t 13346035553Spatrick 13446035553Spatrick intptr_t 13546035553Spatrick uintptr_t 13646035553Spatrick 13746035553Spatrick intmax_t 13846035553Spatrick uintmax_t 13946035553Spatrick 14046035553Spatrick} // std 14146035553Spatrick*/ 14246035553Spatrick 143*4bdff4beSrobert#include <__assert> // all public C++ headers provide the assertion handler 14446035553Spatrick#include <__config> 145*4bdff4beSrobert 14646035553Spatrick#include <stdint.h> 14746035553Spatrick 148*4bdff4beSrobert#ifndef _LIBCPP_STDINT_H 149*4bdff4beSrobert# error <cstdint> tried including <stdint.h> but didn't find libc++'s <stdint.h> header. \ 150*4bdff4beSrobert This usually means that your header search paths are not configured properly. \ 151*4bdff4beSrobert The header search paths should contain the C++ Standard Library headers before \ 152*4bdff4beSrobert any C Standard Library, and you are probably using compiler flags that make that \ 153*4bdff4beSrobert not be the case. 154*4bdff4beSrobert#endif 155*4bdff4beSrobert 15646035553Spatrick#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) 15746035553Spatrick# pragma GCC system_header 15846035553Spatrick#endif 15946035553Spatrick 16046035553Spatrick_LIBCPP_BEGIN_NAMESPACE_STD 16146035553Spatrick 16276d0caaeSpatrickusing ::int8_t _LIBCPP_USING_IF_EXISTS; 16376d0caaeSpatrickusing ::int16_t _LIBCPP_USING_IF_EXISTS; 16476d0caaeSpatrickusing ::int32_t _LIBCPP_USING_IF_EXISTS; 16576d0caaeSpatrickusing ::int64_t _LIBCPP_USING_IF_EXISTS; 16646035553Spatrick 16776d0caaeSpatrickusing ::uint8_t _LIBCPP_USING_IF_EXISTS; 16876d0caaeSpatrickusing ::uint16_t _LIBCPP_USING_IF_EXISTS; 16976d0caaeSpatrickusing ::uint32_t _LIBCPP_USING_IF_EXISTS; 17076d0caaeSpatrickusing ::uint64_t _LIBCPP_USING_IF_EXISTS; 17146035553Spatrick 17276d0caaeSpatrickusing ::int_least8_t _LIBCPP_USING_IF_EXISTS; 17376d0caaeSpatrickusing ::int_least16_t _LIBCPP_USING_IF_EXISTS; 17476d0caaeSpatrickusing ::int_least32_t _LIBCPP_USING_IF_EXISTS; 17576d0caaeSpatrickusing ::int_least64_t _LIBCPP_USING_IF_EXISTS; 17646035553Spatrick 17776d0caaeSpatrickusing ::uint_least8_t _LIBCPP_USING_IF_EXISTS; 17876d0caaeSpatrickusing ::uint_least16_t _LIBCPP_USING_IF_EXISTS; 17976d0caaeSpatrickusing ::uint_least32_t _LIBCPP_USING_IF_EXISTS; 18076d0caaeSpatrickusing ::uint_least64_t _LIBCPP_USING_IF_EXISTS; 18146035553Spatrick 18276d0caaeSpatrickusing ::int_fast8_t _LIBCPP_USING_IF_EXISTS; 18376d0caaeSpatrickusing ::int_fast16_t _LIBCPP_USING_IF_EXISTS; 18476d0caaeSpatrickusing ::int_fast32_t _LIBCPP_USING_IF_EXISTS; 18576d0caaeSpatrickusing ::int_fast64_t _LIBCPP_USING_IF_EXISTS; 18646035553Spatrick 18776d0caaeSpatrickusing ::uint_fast8_t _LIBCPP_USING_IF_EXISTS; 18876d0caaeSpatrickusing ::uint_fast16_t _LIBCPP_USING_IF_EXISTS; 18976d0caaeSpatrickusing ::uint_fast32_t _LIBCPP_USING_IF_EXISTS; 19076d0caaeSpatrickusing ::uint_fast64_t _LIBCPP_USING_IF_EXISTS; 19146035553Spatrick 19276d0caaeSpatrickusing ::intptr_t _LIBCPP_USING_IF_EXISTS; 19376d0caaeSpatrickusing ::uintptr_t _LIBCPP_USING_IF_EXISTS; 19446035553Spatrick 19576d0caaeSpatrickusing ::intmax_t _LIBCPP_USING_IF_EXISTS; 19676d0caaeSpatrickusing ::uintmax_t _LIBCPP_USING_IF_EXISTS; 19746035553Spatrick 19846035553Spatrick_LIBCPP_END_NAMESPACE_STD 19946035553Spatrick 20046035553Spatrick#endif // _LIBCPP_CSTDINT 201