|
|
|||
File indexing completed on 2026-09-11 09:29:19
0001 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */ 0002 #include <stddef.h> 0003 #if __cplusplus >= 201103 0004 #include <cstdint> 0005 #else 0006 #if __GLIBC__ >= 2 0007 #include <stdint.h> 0008 #else 0009 /* Copyright (C) 2001-2002, 2004-2010 Free Software Foundation, Inc. 0010 Written by Paul Eggert, Bruno Haible, Sam Steingold, Peter Burwood. 0011 This file is part of gnulib. 0012 0013 This program is free software; you can redistribute it and/or modify 0014 it under the terms of the GNU Lesser General Public License as published by 0015 the Free Software Foundation; either version 2, or (at your option) 0016 any later version. 0017 0018 This program is distributed in the hope that it will be useful, 0019 but WITHOUT ANY WARRANTY; without even the implied warranty of 0020 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 0021 GNU Lesser General Public License for more details. 0022 0023 You should have received a copy of the GNU Lesser General Public License 0024 along with this program; if not, see <https://www.gnu.org/licenses/>. */ 0025 0026 /* 0027 * Subset of ISO C 99 <stdint.h> for platforms that lack it. 0028 * <http://www.opengroup.org/susv3xbd/stdint.h.html> 0029 */ 0030 0031 #ifndef _UNISTRING_STDINT_H 0032 0033 /* When including a system file that in turn includes <inttypes.h>, 0034 use the system <inttypes.h>, not our substitute. This avoids 0035 problems with (for example) VMS, whose <sys/bitypes.h> includes 0036 <inttypes.h>. */ 0037 #define _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H 0038 0039 /* Get those types that are already defined in other system include 0040 files, so that we can "#define int8_t signed char" below without 0041 worrying about a later system include file containing a "typedef 0042 signed char int8_t;" that will get messed up by our macro. Our 0043 macros should all be consistent with the system versions, except 0044 for the "fast" types and macros, which we recommend against using 0045 in public interfaces due to compiler differences. */ 0046 0047 #if 1 0048 # if defined __sgi && ! defined __c99 0049 /* Bypass IRIX's <stdint.h> if in C89 mode, since it merely annoys users 0050 with "This header file is to be used only for c99 mode compilations" 0051 diagnostics. */ 0052 # define __STDINT_H__ 0053 # endif 0054 /* Other systems may have an incomplete or buggy <stdint.h>. 0055 Include it before <inttypes.h>, since any "#include <stdint.h>" 0056 in <inttypes.h> would reinclude us, skipping our contents because 0057 _UNISTRING_STDINT_H is defined. 0058 The include_next requires a split double-inclusion guard. */ 0059 # if __GNUC__ >= 3 0060 0061 # endif 0062 # include <stdint.h> 0063 #endif 0064 0065 #if ! defined _UNISTRING_STDINT_H && ! defined _GL_JUST_INCLUDE_SYSTEM_STDINT_H 0066 #define _UNISTRING_STDINT_H 0067 0068 /* <sys/types.h> defines some of the stdint.h types as well, on glibc, 0069 IRIX 6.5, and OpenBSD 3.8 (via <machine/types.h>). 0070 AIX 5.2 <sys/types.h> isn't needed and causes troubles. 0071 MacOS X 10.4.6 <sys/types.h> includes <stdint.h> (which is us), but 0072 relies on the system <stdint.h> definitions, so include 0073 <sys/types.h> after <stdint.h>. */ 0074 #if 1 && ! defined _AIX 0075 # include <sys/types.h> 0076 #endif 0077 0078 /* Get LONG_MIN, LONG_MAX, ULONG_MAX. */ 0079 #include <limits.h> 0080 0081 #if 1 0082 /* In OpenBSD 3.8, <inttypes.h> includes <machine/types.h>, which defines 0083 int{8,16,32,64}_t, uint{8,16,32,64}_t and __BIT_TYPES_DEFINED__. 0084 <inttypes.h> also defines intptr_t and uintptr_t. */ 0085 # include <inttypes.h> 0086 #elif 0 0087 /* Solaris 7 <sys/inttypes.h> has the types except the *_fast*_t types, and 0088 the macros except for *_FAST*_*, INTPTR_MIN, PTRDIFF_MIN, PTRDIFF_MAX. */ 0089 # include <sys/inttypes.h> 0090 #endif 0091 0092 #if 0 && ! defined __BIT_TYPES_DEFINED__ 0093 /* Linux libc4 >= 4.6.7 and libc5 have a <sys/bitypes.h> that defines 0094 int{8,16,32,64}_t and __BIT_TYPES_DEFINED__. In libc5 >= 5.2.2 it is 0095 included by <sys/types.h>. */ 0096 # include <sys/bitypes.h> 0097 #endif 0098 0099 #undef _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H 0100 0101 0102 /* 7.18.1.1. Exact-width integer types */ 0103 0104 /* Here we assume a standard architecture where the hardware integer 0105 types have 8, 16, 32, optionally 64 bits. */ 0106 0107 #undef int8_t 0108 #undef uint8_t 0109 typedef signed char unistring_int8_t; 0110 typedef unsigned char unistring_uint8_t; 0111 #define int8_t unistring_int8_t 0112 #define uint8_t unistring_uint8_t 0113 0114 #undef int16_t 0115 #undef uint16_t 0116 typedef short int unistring_int16_t; 0117 typedef unsigned short int unistring_uint16_t; 0118 #define int16_t unistring_int16_t 0119 #define uint16_t unistring_uint16_t 0120 0121 #undef int32_t 0122 #undef uint32_t 0123 typedef int unistring_int32_t; 0124 typedef unsigned int unistring_uint32_t; 0125 #define int32_t unistring_int32_t 0126 #define uint32_t unistring_uint32_t 0127 0128 /* Avoid collision with Solaris 2.5.1 <pthread.h> etc. */ 0129 #define _UINT8_T 0130 #define _UINT32_T 0131 0132 0133 #endif /* _UNISTRING_STDINT_H */ 0134 #endif /* !defined _UNISTRING_STDINT_H && !defined _GL_JUST_INCLUDE_SYSTEM_STDINT_H */ 0135 #endif 0136 #endif
| [ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
|
This page was automatically generated by the 2.3.7 LXR engine. The LXR team |
|