Back to home page

EIC code displayed by LXR

 
 

    


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