/* Copyright 1999 Element 14 Ltd * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ #pragma force_top_level #pragma include_only_once /* stdint.h: ISO 'C' (WG14/N843 Aug 98) library header, section 7.18 */ /* Copyright (C) Element 14 Ltd. 1999 */ /* version 1.00 */ #ifndef __stdint_h #define __stdint_h /* * A set of C9X-style definitions that make sense for the current * (Norcroft 5) implementation. Note that we have no 64-bit types, * as a conforming C9X implementation must. */ /* Types with exactly the specified width */ typedef signed char int8_t; typedef signed short int16_t; typedef signed int int32_t; typedef unsigned char uint8_t; typedef unsigned short uint16_t; typedef unsigned int uint32_t; /* The smallest types with at least the specified width */ typedef signed char int_least8_t; typedef signed short int_least16_t; typedef signed int int_least32_t; typedef unsigned char uint_least8_t; typedef unsigned short uint_least16_t; typedef unsigned int uint_least32_t; /* The "fastest" types with at least the specified width */ typedef signed char int_fast8_t; typedef signed int int_fast16_t; /* actually 32 bits */ typedef signed int int_fast32_t; typedef unsigned char uint_fast8_t; typedef unsigned int uint_fast16_t; /* actually 32 bits */ typedef unsigned int uint_fast32_t; /* Integer types capable of holding a "void *" pointer */ typedef signed int intptr_t; typedef unsigned int uintptr_t; /* Integer types that can hold any value of any type */ typedef signed int intmax_t; typedef unsigned int uintmax_t; #if !defined(__cplusplus) || defined(__STDC_LIMIT_MACROS) #define INT8_MIN (-128) #define INT16_MIN (-32768) #define INT32_MIN (~0x7FFFFFFF) #define INT8_MAX 127 #define INT16_MAX 32767 #define INT32_MAX 2147483647 #define UINT8_MAX 255u #define UINT16_MAX 65535u #define UINT32_MAX 4294967295u #define INT_LEAST8_MIN (-128) #define INT_LEAST16_MIN (-32768) #define INT_LEAST32_MIN (~0x7FFFFFFF) #define INT_LEAST8_MAX 127 #define INT_LEAST16_MAX 32767 #define INT_LEAST32_MAX 2147483647 #define UINT_LEAST8_MAX 255u #define UINT_LEAST16_MAX 65535u #define UINT_LEAST32_MAX 4294967295u #define INT_FAST8_MIN (-128) #define INT_FAST16_MIN (~0x7FFFFFFF) #define INT_FAST32_MIN (~0x7FFFFFFF) #define INT_FAST8_MAX 127 #define INT_FAST16_MAX 2147483647 #define INT_FAST32_MAX 2147483647 #define UINT_FAST8_MAX 255u #define UINT_FAST16_MAX 4294967295u #define UINT_FAST32_MAX 4294967295u #define INTPTR_MIN (~0x7FFFFFFF) #define INTPTR_MAX 2147483647 #define UINTPTR_MAX 4294967295u #define INTMAX_MIN (~0x7FFFFFFF) #define INTMAX_MAX 2147483647 #define UINTMAX_MAX 4294967295u #define PTRDIFF_MIN (~0x7FFFFFFF) #define PTRDIFF_MAX 2147483647 #define SIZE_MAX 4294967295u #define WCHAR_MIN (~0x7FFFFFFF) #define WCHAR_MAX 2147483647 #endif #if !defined(__cplusplus) || defined(__STDC_CONSTANT_MACROS) #define INT8_C(n) n #define INT16_C(n) n #define INT32_C(n) n #define UINT8_C(n) n##u #define UINT16_C(n) n##u #define UINT32_C(n) n##u #define INTMAX_C(n) n #define UINTMAX_C(n) n##u #endif #endif /* end of stdint.h */