diff options
Diffstat (limited to 'Utilities/KWIML/INT.h.in')
-rw-r--r-- | Utilities/KWIML/INT.h.in | 861 |
1 files changed, 0 insertions, 861 deletions
diff --git a/Utilities/KWIML/INT.h.in b/Utilities/KWIML/INT.h.in deleted file mode 100644 index d2eda63..0000000 --- a/Utilities/KWIML/INT.h.in +++ /dev/null @@ -1,861 +0,0 @@ -/*============================================================================ - Kitware Information Macro Library - Copyright 2010-2011 Kitware, Inc. - All rights reserved. - - Redistribution and use in source and binary forms, with or without - modification, are permitted provided that the following conditions - are met: - - * Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - - * Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. - - * Neither the name of Kitware, Inc. nor the names of its contributors - may be used to endorse or promote products derived from this - software without specific prior written permission. - - THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR - A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT - HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT - LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE - OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -============================================================================*/ -#ifndef @KWIML@_INT_H -#define @KWIML@_INT_H -/* -This header defines macros with information about sized integer types. -Only information that can be determined using the preprocessor at -compilation time is available. No try-compile results may be added -here. Instead we memorize results on platforms of interest. - -An includer may optionally define the following macros to suppress errors: - -Input: - @KWIML@_INT_NO_VERIFY = skip verification declarations - @KWIML@_INT_NO_ERROR_INT64_T = type '@KWIML@_INT_int64_t' is optional (*) - @KWIML@_INT_NO_ERROR_UINT64_T = type '@KWIML@_INT_uint64_t' is optional (*) - @KWIML@_INT_NO_ERROR_INTPTR_T = type '@KWIML@_INT_intptr_t' is optional (*) - @KWIML@_INT_NO_ERROR_UINTPTR_T = type '@KWIML@_INT_uintptr_t' is optional (*) - -An includer may optionally define the following macros to override defaults. -Either way, an includer may test these macros after inclusion: - - @KWIML@_INT_HAVE_STDINT_H = include <stdint.h> - @KWIML@_INT_NO_STDINT_H = do not include <stdint.h> - @KWIML@_INT_HAVE_INTTYPES_H = include <inttypes.h> - @KWIML@_INT_NO_INTTYPES_H = do not include <inttypes.h> - -An includer may test the following macros after inclusion: - - @KWIML@_INT_HAVE_INT#_T = type 'int#_t' is available - @KWIML@_INT_HAVE_UINT#_T = type 'uint#_t' is available - # = 8, 16, 32, 64, PTR - - @KWIML@_INT_int#_t = signed integer type exactly # bits wide - @KWIML@_INT_uint#_t = unsigned integer type exactly # bits wide - # = 8, 16, 32, 64 (*), ptr (*) - - @KWIML@_INT_NO_INT64_T = type '@KWIML@_INT_int64_t' not available - @KWIML@_INT_NO_UINT64_T = type '@KWIML@_INT_uint64_t' not available - @KWIML@_INT_NO_INTPTR_T = type '@KWIML@_INT_intptr_t' not available - @KWIML@_INT_NO_UINTPTR_T = type '@KWIML@_INT_uintptr_t' not available - - @KWIML@_INT_INT#_C(c) = signed integer constant at least # bits wide - @KWIML@_INT_UINT#_C(c) = unsigned integer constant at least # bits wide - # = 8, 16, 32, 64 (*) - - @KWIML@_INT_<fmt># = print or scan format, <fmt> in table below - # = 8, 16, 32, 64, PTR (*) - - signed unsigned - ----------- ------------------------------ - | decimal | decimal octal hexadecimal | - print | PRId PRIi | PRIu PRIo PRIx PRIX | - scan | SCNd SCNi | SCNu SCNo SCNx | - ----------- ------------------------------ - - The SCN*8 and SCN*64 format macros will not be defined on systems - with scanf implementations known not to support them. - - @KWIML@_INT_BROKEN_<fmt># = macro <fmt># is incorrect if defined - Some compilers define integer format macros incorrectly for their - own formatted print/scan implementations. - - @KWIML@_INT_BROKEN_INT#_C = macro INT#_C is incorrect if defined - @KWIML@_INT_BROKEN_UINT#_C = macro UINT#_C is incorrect if defined - Some compilers define integer constant macros incorrectly and - cannot handle literals as large as the integer type or even - produce bad preprocessor syntax. - - @KWIML@_INT_BROKEN_INT8_T = type 'int8_t' is available but incorrect - Some compilers have a flag to make 'char' (un)signed but do not account - for it while defining int8_t in the non-default case. - - The broken cases do not affect correctness of the macros documented above. -*/ - -#include "ABI.h" - -/*--------------------------------------------------------------------------*/ -#if defined(@KWIML@_INT_HAVE_STDINT_H) /* Already defined. */ -#elif defined(@KWIML@_INT_NO_STDINT_H) /* Already defined. */ -#elif defined(HAVE_STDINT_H) /* Optionally provided by includer. */ -# define @KWIML@_INT_HAVE_STDINT_H 1 -#elif defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L /* C99 */ -# define @KWIML@_INT_HAVE_STDINT_H 1 -#elif defined(_MSC_VER) /* MSVC */ -# if _MSC_VER >= 1600 -# define @KWIML@_INT_HAVE_STDINT_H 1 -# else -# define @KWIML@_INT_NO_STDINT_H 1 -# endif -#elif defined(__BORLANDC__) /* Borland */ -# if __BORLANDC__ >= 0x560 -# define @KWIML@_INT_HAVE_STDINT_H 1 -# else -# define @KWIML@_INT_NO_STDINT_H 1 -# endif -#elif defined(__WATCOMC__) /* Watcom */ -# define @KWIML@_INT_NO_STDINT_H 1 -#endif - -/*--------------------------------------------------------------------------*/ -#if defined(@KWIML@_INT_HAVE_INTTYPES_H) /* Already defined. */ -#elif defined(@KWIML@_INT_NO_INTTYPES_H) /* Already defined. */ -#elif defined(HAVE_INTTYPES_H) /* Optionally provided by includer. */ -# define @KWIML@_INT_HAVE_INTTYPES_H 1 -#elif defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L /* C99 */ -# define @KWIML@_INT_HAVE_INTTYPES_H 1 -#elif defined(_MSC_VER) /* MSVC */ -# define @KWIML@_INT_NO_INTTYPES_H 1 -#elif defined(__BORLANDC__) /* Borland */ -# define @KWIML@_INT_NO_INTTYPES_H 1 -#elif defined(__WATCOMC__) /* Watcom */ -# define @KWIML@_INT_NO_INTTYPES_H 1 -#else /* Assume it exists. */ -# define @KWIML@_INT_HAVE_INTTYPES_H 1 -#endif - -/*--------------------------------------------------------------------------*/ -#if defined(@KWIML@_INT_HAVE_STDINT_H) && defined(@KWIML@_INT_NO_STDINT_H) -# error "Both @KWIML@_INT_HAVE_STDINT_H and @KWIML@_INT_NO_STDINT_H defined!" -#endif -#if defined(@KWIML@_INT_HAVE_INTTYPES_H) && defined(@KWIML@_INT_NO_INTTYPES_H) -# error "Both @KWIML@_INT_HAVE_INTTYPES_H and @KWIML@_INT_NO_INTTYPES_H defined!" -#endif - -#if defined(@KWIML@_INT_HAVE_STDINT_H) -# include <stdint.h> -#endif -#if defined(@KWIML@_INT_HAVE_INTTYPES_H) -# if defined(__cplusplus) && !defined(__STDC_FORMAT_MACROS) -# define __STDC_FORMAT_MACROS -# endif -# include <inttypes.h> -#endif - -#if defined(@KWIML@_INT_HAVE_STDINT_H) || defined(@KWIML@_INT_HAVE_INTTYPES_H) -#define @KWIML@_INT_HAVE_INT8_T 1 -#define @KWIML@_INT_HAVE_UINT8_T 1 -#define @KWIML@_INT_HAVE_INT16_T 1 -#define @KWIML@_INT_HAVE_UINT16_T 1 -#define @KWIML@_INT_HAVE_INT32_T 1 -#define @KWIML@_INT_HAVE_UINT32_T 1 -#define @KWIML@_INT_HAVE_INT64_T 1 -#define @KWIML@_INT_HAVE_UINT64_T 1 -#define @KWIML@_INT_HAVE_INTPTR_T 1 -#define @KWIML@_INT_HAVE_UINTPTR_T 1 -#endif - -#if defined(_AIX43) && !defined(_AIX50) && !defined(_AIX51) - /* AIX 4.3 defines these incorrectly with % and no quotes. */ -# define @KWIML@_INT_BROKEN_PRId8 -# define @KWIML@_INT_BROKEN_SCNd8 -# define @KWIML@_INT_BROKEN_PRIi8 -# define @KWIML@_INT_BROKEN_SCNi8 -# define @KWIML@_INT_BROKEN_PRIo8 -# define @KWIML@_INT_BROKEN_SCNo8 -# define @KWIML@_INT_BROKEN_PRIu8 -# define @KWIML@_INT_BROKEN_SCNu8 -# define @KWIML@_INT_BROKEN_PRIx8 -# define @KWIML@_INT_BROKEN_SCNx8 -# define @KWIML@_INT_BROKEN_PRIX8 -# define @KWIML@_INT_BROKEN_PRId16 -# define @KWIML@_INT_BROKEN_SCNd16 -# define @KWIML@_INT_BROKEN_PRIi16 -# define @KWIML@_INT_BROKEN_SCNi16 -# define @KWIML@_INT_BROKEN_PRIo16 -# define @KWIML@_INT_BROKEN_SCNo16 -# define @KWIML@_INT_BROKEN_PRIu16 -# define @KWIML@_INT_BROKEN_SCNu16 -# define @KWIML@_INT_BROKEN_PRIx16 -# define @KWIML@_INT_BROKEN_SCNx16 -# define @KWIML@_INT_BROKEN_PRIX16 -# define @KWIML@_INT_BROKEN_PRId32 -# define @KWIML@_INT_BROKEN_SCNd32 -# define @KWIML@_INT_BROKEN_PRIi32 -# define @KWIML@_INT_BROKEN_SCNi32 -# define @KWIML@_INT_BROKEN_PRIo32 -# define @KWIML@_INT_BROKEN_SCNo32 -# define @KWIML@_INT_BROKEN_PRIu32 -# define @KWIML@_INT_BROKEN_SCNu32 -# define @KWIML@_INT_BROKEN_PRIx32 -# define @KWIML@_INT_BROKEN_SCNx32 -# define @KWIML@_INT_BROKEN_PRIX32 -# define @KWIML@_INT_BROKEN_PRId64 -# define @KWIML@_INT_BROKEN_SCNd64 -# define @KWIML@_INT_BROKEN_PRIi64 -# define @KWIML@_INT_BROKEN_SCNi64 -# define @KWIML@_INT_BROKEN_PRIo64 -# define @KWIML@_INT_BROKEN_SCNo64 -# define @KWIML@_INT_BROKEN_PRIu64 -# define @KWIML@_INT_BROKEN_SCNu64 -# define @KWIML@_INT_BROKEN_PRIx64 -# define @KWIML@_INT_BROKEN_SCNx64 -# define @KWIML@_INT_BROKEN_PRIX64 -# define @KWIML@_INT_BROKEN_PRIdPTR -# define @KWIML@_INT_BROKEN_SCNdPTR -# define @KWIML@_INT_BROKEN_PRIiPTR -# define @KWIML@_INT_BROKEN_SCNiPTR -# define @KWIML@_INT_BROKEN_PRIoPTR -# define @KWIML@_INT_BROKEN_SCNoPTR -# define @KWIML@_INT_BROKEN_PRIuPTR -# define @KWIML@_INT_BROKEN_SCNuPTR -# define @KWIML@_INT_BROKEN_PRIxPTR -# define @KWIML@_INT_BROKEN_SCNxPTR -# define @KWIML@_INT_BROKEN_PRIXPTR -#endif - -#if (defined(__SUNPRO_C)||defined(__SUNPRO_CC)) && defined(_CHAR_IS_UNSIGNED) -# define @KWIML@_INT_BROKEN_INT8_T /* system type defined incorrectly */ -#elif defined(__BORLANDC__) && defined(_CHAR_UNSIGNED) -# define @KWIML@_INT_BROKEN_INT8_T /* system type defined incorrectly */ -#endif - -/*--------------------------------------------------------------------------*/ -#if defined(@KWIML@_INT_HAVE_INT8_T) && !defined(@KWIML@_INT_BROKEN_INT8_T) -# define @KWIML@_INT_int8_t int8_t -#else -# define @KWIML@_INT_int8_t signed char -#endif -#if defined(@KWIML@_INT_HAVE_UINT8_T) -# define @KWIML@_INT_uint8_t uint8_t -#else -# define @KWIML@_INT_uint8_t unsigned char -#endif - -#if defined(__INTEL_COMPILER) -# if defined(_WIN32) -# define @KWIML@_INT__NO_SCN8 -# endif -#elif defined(__SUNPRO_C) || defined(__SUNPRO_CC) -# define @KWIML@_INT__NO_SCN8 -#elif defined(__BORLANDC__) -# define @KWIML@_INT__NO_SCN8 -# define @KWIML@_INT__NO_SCN64 -#elif defined(_MSC_VER) -# define @KWIML@_INT__NO_SCN8 -#elif defined(__WATCOMC__) -# define @KWIML@_INT__NO_SCN8 -# elif defined(__hpux) /* HP runtime lacks support (any compiler) */ -# define @KWIML@_INT__NO_SCN8 -#endif - -/* 8-bit d, i */ -#if defined(@KWIML@_INT_HAVE_INT8_T) && defined(PRId8) \ - && !defined(@KWIML@_INT_BROKEN_PRId8) -# define @KWIML@_INT_PRId8 PRId8 -#else -# define @KWIML@_INT_PRId8 "d" -#endif -#if defined(@KWIML@_INT_HAVE_INT8_T) && defined(SCNd8) \ - && !defined(@KWIML@_INT_BROKEN_SCNd8) -# define @KWIML@_INT_SCNd8 SCNd8 -#elif !defined(@KWIML@_INT__NO_SCN8) -# define @KWIML@_INT_SCNd8 "hhd" -#endif -#if defined(@KWIML@_INT_HAVE_INT8_T) && defined(PRIi8) \ - && !defined(@KWIML@_INT_BROKEN_PRIi8) -# define @KWIML@_INT_PRIi8 PRIi8 -#else -# define @KWIML@_INT_PRIi8 "i" -#endif -#if defined(@KWIML@_INT_HAVE_INT8_T) && defined(SCNi8) \ - && !defined(@KWIML@_INT_BROKEN_SCNi8) -# define @KWIML@_INT_SCNi8 SCNi8 -#elif !defined(@KWIML@_INT__NO_SCN8) -# define @KWIML@_INT_SCNi8 "hhi" -#endif - -/* 8-bit o, u, x, X */ -#if defined(@KWIML@_INT_HAVE_UINT8_T) && defined(PRIo8) \ - && !defined(@KWIML@_INT_BROKEN_PRIo8) -# define @KWIML@_INT_PRIo8 PRIo8 -#else -# define @KWIML@_INT_PRIo8 "o" -#endif -#if defined(@KWIML@_INT_HAVE_UINT8_T) && defined(SCNo8) \ - && !defined(@KWIML@_INT_BROKEN_SCNo8) -# define @KWIML@_INT_SCNo8 SCNo8 -#elif !defined(@KWIML@_INT__NO_SCN8) -# define @KWIML@_INT_SCNo8 "hho" -#endif -#if defined(@KWIML@_INT_HAVE_UINT8_T) && defined(PRIu8) \ - && !defined(@KWIML@_INT_BROKEN_PRIu8) -# define @KWIML@_INT_PRIu8 PRIu8 -#else -# define @KWIML@_INT_PRIu8 "u" -#endif -#if defined(@KWIML@_INT_HAVE_UINT8_T) && defined(SCNu8) \ - && !defined(@KWIML@_INT_BROKEN_SCNu8) -# define @KWIML@_INT_SCNu8 SCNu8 -#elif !defined(@KWIML@_INT__NO_SCN8) -# define @KWIML@_INT_SCNu8 "hhu" -#endif -#if defined(@KWIML@_INT_HAVE_UINT8_T) && defined(PRIx8) \ - && !defined(@KWIML@_INT_BROKEN_PRIx8) -# define @KWIML@_INT_PRIx8 PRIx8 -#else -# define @KWIML@_INT_PRIx8 "x" -#endif -#if defined(@KWIML@_INT_HAVE_UINT8_T) && defined(SCNx8) \ - && !defined(@KWIML@_INT_BROKEN_SCNx8) -# define @KWIML@_INT_SCNx8 SCNx8 -#elif !defined(@KWIML@_INT__NO_SCN8) -# define @KWIML@_INT_SCNx8 "hhx" -#endif -#if defined(@KWIML@_INT_HAVE_UINT8_T) && defined(PRIX8) \ - && !defined(@KWIML@_INT_BROKEN_PRIX8) -# define @KWIML@_INT_PRIX8 PRIX8 -#else -# define @KWIML@_INT_PRIX8 "X" -#endif - -/* 8-bit constants */ -#if defined(INT8_C) && !defined(@KWIML@_INT_BROKEN_INT8_C) -# define @KWIML@_INT_INT8_C(c) INT8_C(c) -#else -# define @KWIML@_INT_INT8_C(c) c -#endif -#if defined(UINT8_C) && !defined(@KWIML@_INT_BROKEN_UINT8_C) -# define @KWIML@_INT_UINT8_C(c) UINT8_C(c) -#else -# define @KWIML@_INT_UINT8_C(c) c ## u -#endif - -/*--------------------------------------------------------------------------*/ -#if defined(@KWIML@_INT_HAVE_INT16_T) -# define @KWIML@_INT_int16_t int16_t -#else -# define @KWIML@_INT_int16_t signed short -#endif -#if defined(@KWIML@_INT_HAVE_UINT16_T) -# define @KWIML@_INT_uint16_t uint16_t -#else -# define @KWIML@_INT_uint16_t unsigned short -#endif - -/* 16-bit d, i */ -#if defined(@KWIML@_INT_HAVE_INT16_T) && defined(PRId16) \ - && !defined(@KWIML@_INT_BROKEN_PRId16) -# define @KWIML@_INT_PRId16 PRId16 -#else -# define @KWIML@_INT_PRId16 "d" -#endif -#if defined(@KWIML@_INT_HAVE_INT16_T) && defined(SCNd16) \ - && !defined(@KWIML@_INT_BROKEN_SCNd16) -# define @KWIML@_INT_SCNd16 SCNd16 -#else -# define @KWIML@_INT_SCNd16 "hd" -#endif -#if defined(@KWIML@_INT_HAVE_INT16_T) && defined(PRIi16) \ - && !defined(@KWIML@_INT_BROKEN_PRIi16) -# define @KWIML@_INT_PRIi16 PRIi16 -#else -# define @KWIML@_INT_PRIi16 "i" -#endif -#if defined(@KWIML@_INT_HAVE_INT16_T) && defined(SCNi16) \ - && !defined(@KWIML@_INT_BROKEN_SCNi16) -# define @KWIML@_INT_SCNi16 SCNi16 -#else -# define @KWIML@_INT_SCNi16 "hi" -#endif - -/* 16-bit o, u, x, X */ -#if defined(@KWIML@_INT_HAVE_UINT16_T) && defined(PRIo16) \ - && !defined(@KWIML@_INT_BROKEN_PRIo16) -# define @KWIML@_INT_PRIo16 PRIo16 -#else -# define @KWIML@_INT_PRIo16 "o" -#endif -#if defined(@KWIML@_INT_HAVE_UINT16_T) && defined(SCNo16) \ - && !defined(@KWIML@_INT_BROKEN_SCNo16) -# define @KWIML@_INT_SCNo16 SCNo16 -#else -# define @KWIML@_INT_SCNo16 "ho" -#endif -#if defined(@KWIML@_INT_HAVE_UINT16_T) && defined(PRIu16) \ - && !defined(@KWIML@_INT_BROKEN_PRIu16) -# define @KWIML@_INT_PRIu16 PRIu16 -#else -# define @KWIML@_INT_PRIu16 "u" -#endif -#if defined(@KWIML@_INT_HAVE_UINT16_T) && defined(SCNu16) \ - && !defined(@KWIML@_INT_BROKEN_SCNu16) -# define @KWIML@_INT_SCNu16 SCNu16 -#else -# define @KWIML@_INT_SCNu16 "hu" -#endif -#if defined(@KWIML@_INT_HAVE_UINT16_T) && defined(PRIx16) \ - && !defined(@KWIML@_INT_BROKEN_PRIx16) -# define @KWIML@_INT_PRIx16 PRIx16 -#else -# define @KWIML@_INT_PRIx16 "x" -#endif -#if defined(@KWIML@_INT_HAVE_UINT16_T) && defined(SCNx16) \ - && !defined(@KWIML@_INT_BROKEN_SCNx16) -# define @KWIML@_INT_SCNx16 SCNx16 -#else -# define @KWIML@_INT_SCNx16 "hx" -#endif -#if defined(@KWIML@_INT_HAVE_UINT16_T) && defined(PRIX16) \ - && !defined(@KWIML@_INT_BROKEN_PRIX16) -# define @KWIML@_INT_PRIX16 PRIX16 -#else -# define @KWIML@_INT_PRIX16 "X" -#endif - -/* 16-bit constants */ -#if defined(INT16_C) && !defined(@KWIML@_INT_BROKEN_INT16_C) -# define @KWIML@_INT_INT16_C(c) INT16_C(c) -#else -# define @KWIML@_INT_INT16_C(c) c -#endif -#if defined(UINT16_C) && !defined(@KWIML@_INT_BROKEN_UINT16_C) -# define @KWIML@_INT_UINT16_C(c) UINT16_C(c) -#else -# define @KWIML@_INT_UINT16_C(c) c ## u -#endif - -/*--------------------------------------------------------------------------*/ -#if defined(@KWIML@_INT_HAVE_INT32_T) -# define @KWIML@_INT_int32_t int32_t -#else -# define @KWIML@_INT_int32_t signed int -#endif -#if defined(@KWIML@_INT_HAVE_UINT32_T) -# define @KWIML@_INT_uint32_t uint32_t -#else -# define @KWIML@_INT_uint32_t unsigned int -#endif - -/* 32-bit d, i */ -#if defined(@KWIML@_INT_HAVE_INT32_T) && defined(PRId32) \ - && !defined(@KWIML@_INT_BROKEN_PRId32) -# define @KWIML@_INT_PRId32 PRId32 -#else -# define @KWIML@_INT_PRId32 "d" -#endif -#if defined(@KWIML@_INT_HAVE_INT32_T) && defined(SCNd32) \ - && !defined(@KWIML@_INT_BROKEN_SCNd32) -# define @KWIML@_INT_SCNd32 SCNd32 -#else -# define @KWIML@_INT_SCNd32 "d" -#endif -#if defined(@KWIML@_INT_HAVE_INT32_T) && defined(PRIi32) \ - && !defined(@KWIML@_INT_BROKEN_PRIi32) -# define @KWIML@_INT_PRIi32 PRIi32 -#else -# define @KWIML@_INT_PRIi32 "i" -#endif -#if defined(@KWIML@_INT_HAVE_INT32_T) && defined(SCNi32) \ - && !defined(@KWIML@_INT_BROKEN_SCNi32) -# define @KWIML@_INT_SCNi32 SCNi32 -#else -# define @KWIML@_INT_SCNi32 "i" -#endif - -/* 32-bit o, u, x, X */ -#if defined(@KWIML@_INT_HAVE_UINT32_T) && defined(PRIo32) \ - && !defined(@KWIML@_INT_BROKEN_PRIo32) -# define @KWIML@_INT_PRIo32 PRIo32 -#else -# define @KWIML@_INT_PRIo32 "o" -#endif -#if defined(@KWIML@_INT_HAVE_UINT32_T) && defined(SCNo32) \ - && !defined(@KWIML@_INT_BROKEN_SCNo32) -# define @KWIML@_INT_SCNo32 SCNo32 -#else -# define @KWIML@_INT_SCNo32 "o" -#endif -#if defined(@KWIML@_INT_HAVE_UINT32_T) && defined(PRIu32) \ - && !defined(@KWIML@_INT_BROKEN_PRIu32) -# define @KWIML@_INT_PRIu32 PRIu32 -#else -# define @KWIML@_INT_PRIu32 "u" -#endif -#if defined(@KWIML@_INT_HAVE_UINT32_T) && defined(SCNu32) \ - && !defined(@KWIML@_INT_BROKEN_SCNu32) -# define @KWIML@_INT_SCNu32 SCNu32 -#else -# define @KWIML@_INT_SCNu32 "u" -#endif -#if defined(@KWIML@_INT_HAVE_UINT32_T) && defined(PRIx32) \ - && !defined(@KWIML@_INT_BROKEN_PRIx32) -# define @KWIML@_INT_PRIx32 PRIx32 -#else -# define @KWIML@_INT_PRIx32 "x" -#endif -#if defined(@KWIML@_INT_HAVE_UINT32_T) && defined(SCNx32) \ - && !defined(@KWIML@_INT_BROKEN_SCNx32) -# define @KWIML@_INT_SCNx32 SCNx32 -#else -# define @KWIML@_INT_SCNx32 "x" -#endif -#if defined(@KWIML@_INT_HAVE_UINT32_T) && defined(PRIX32) \ - && !defined(@KWIML@_INT_BROKEN_PRIX32) -# define @KWIML@_INT_PRIX32 PRIX32 -#else -# define @KWIML@_INT_PRIX32 "X" -#endif - -#if defined(__hpux) && defined(__GNUC__) && !defined(__LP64__) \ - && defined(__CONCAT__) && defined(__CONCAT_U__) - /* Some HPs define UINT32_C incorrectly and break GNU. */ -# define @KWIML@_INT_BROKEN_UINT32_C -#endif - -/* 32-bit constants */ -#if defined(INT32_C) && !defined(@KWIML@_INT_BROKEN_INT32_C) -# define @KWIML@_INT_INT32_C(c) INT32_C(c) -#else -# define @KWIML@_INT_INT32_C(c) c -#endif -#if defined(UINT32_C) && !defined(@KWIML@_INT_BROKEN_UINT32_C) -# define @KWIML@_INT_UINT32_C(c) UINT32_C(c) -#else -# define @KWIML@_INT_UINT32_C(c) c ## u -#endif - -/*--------------------------------------------------------------------------*/ -#if defined(@KWIML@_INT_HAVE_INT64_T) -# define @KWIML@_INT_int64_t int64_t -#elif @KWIML@_ABI_SIZEOF_LONG == 8 -# define @KWIML@_INT_int64_t signed long -#elif defined(@KWIML@_ABI_SIZEOF_LONG_LONG) && @KWIML@_ABI_SIZEOF_LONG_LONG == 8 -# define @KWIML@_INT_int64_t signed long long -#elif defined(@KWIML@_ABI_SIZEOF___INT64) -# define @KWIML@_INT_int64_t signed __int64 -#elif defined(@KWIML@_INT_NO_ERROR_INT64_T) -# define @KWIML@_INT_NO_INT64_T -#else -# error "No type known for 'int64_t'." -#endif -#if defined(@KWIML@_INT_HAVE_UINT64_T) -# define @KWIML@_INT_uint64_t uint64_t -#elif @KWIML@_ABI_SIZEOF_LONG == 8 -# define @KWIML@_INT_uint64_t unsigned long -#elif defined(@KWIML@_ABI_SIZEOF_LONG_LONG) && @KWIML@_ABI_SIZEOF_LONG_LONG == 8 -# define @KWIML@_INT_uint64_t unsigned long long -#elif defined(@KWIML@_ABI_SIZEOF___INT64) -# define @KWIML@_INT_uint64_t unsigned __int64 -#elif defined(@KWIML@_INT_NO_ERROR_UINT64_T) -# define @KWIML@_INT_NO_UINT64_T -#else -# error "No type known for 'uint64_t'." -#endif - -#if defined(__INTEL_COMPILER) -#elif defined(__BORLANDC__) -# define @KWIML@_INT__NO_FMTLL /* type 'long long' but not 'll' format */ -# define @KWIML@_INT_BROKEN_INT64_C /* system macro defined incorrectly */ -# define @KWIML@_INT_BROKEN_UINT64_C /* system macro defined incorrectly */ -#elif defined(_MSC_VER) && _MSC_VER < 1400 -# define @KWIML@_INT__NO_FMTLL /* type 'long long' but not 'll' format */ -#endif - -#if @KWIML@_ABI_SIZEOF_LONG == 8 -# define @KWIML@_INT__FMT64 "l" -#elif defined(@KWIML@_ABI_SIZEOF_LONG_LONG) && @KWIML@_ABI_SIZEOF_LONG_LONG == 8 -# if !defined(@KWIML@_INT__NO_FMTLL) -# define @KWIML@_INT__FMT64 "ll" -# else -# define @KWIML@_INT__FMT64 "I64" -# endif -#elif defined(@KWIML@_ABI_SIZEOF___INT64) -# if defined(__BORLANDC__) -# define @KWIML@_INT__FMT64 "L" -# else -# define @KWIML@_INT__FMT64 "I64" -# endif -#endif - -/* 64-bit d, i */ -#if defined(@KWIML@_INT_HAVE_INT64_T) && defined(PRId64) \ - && !defined(@KWIML@_INT_BROKEN_PRId64) -# define @KWIML@_INT_PRId64 PRId64 -#elif defined(@KWIML@_INT__FMT64) -# define @KWIML@_INT_PRId64 @KWIML@_INT__FMT64 "d" -#endif -#if defined(@KWIML@_INT_HAVE_INT64_T) && defined(SCNd64) \ - && !defined(@KWIML@_INT_BROKEN_SCNd64) -# define @KWIML@_INT_SCNd64 SCNd64 -#elif defined(@KWIML@_INT__FMT64) && !defined(@KWIML@_INT__NO_SCN64) -# define @KWIML@_INT_SCNd64 @KWIML@_INT__FMT64 "d" -#endif -#if defined(@KWIML@_INT_HAVE_INT64_T) && defined(PRIi64) \ - && !defined(@KWIML@_INT_BROKEN_PRIi64) -# define @KWIML@_INT_PRIi64 PRIi64 -#elif defined(@KWIML@_INT__FMT64) -# define @KWIML@_INT_PRIi64 @KWIML@_INT__FMT64 "d" -#endif -#if defined(@KWIML@_INT_HAVE_INT64_T) && defined(SCNi64) \ - && !defined(@KWIML@_INT_BROKEN_SCNi64) -# define @KWIML@_INT_SCNi64 SCNi64 -#elif defined(@KWIML@_INT__FMT64) && !defined(@KWIML@_INT__NO_SCN64) -# define @KWIML@_INT_SCNi64 @KWIML@_INT__FMT64 "d" -#endif - -/* 64-bit o, u, x, X */ -#if defined(@KWIML@_INT_HAVE_UINT64_T) && defined(PRIo64) \ - && !defined(@KWIML@_INT_BROKEN_PRIo64) -# define @KWIML@_INT_PRIo64 PRIo64 -#elif defined(@KWIML@_INT__FMT64) -# define @KWIML@_INT_PRIo64 @KWIML@_INT__FMT64 "o" -#endif -#if defined(@KWIML@_INT_HAVE_UINT64_T) && defined(SCNo64) \ - && !defined(@KWIML@_INT_BROKEN_SCNo64) -# define @KWIML@_INT_SCNo64 SCNo64 -#elif defined(@KWIML@_INT__FMT64) && !defined(@KWIML@_INT__NO_SCN64) -# define @KWIML@_INT_SCNo64 @KWIML@_INT__FMT64 "o" -#endif -#if defined(@KWIML@_INT_HAVE_UINT64_T) && defined(PRIu64) \ - && !defined(@KWIML@_INT_BROKEN_PRIu64) -# define @KWIML@_INT_PRIu64 PRIu64 -#elif defined(@KWIML@_INT__FMT64) -# define @KWIML@_INT_PRIu64 @KWIML@_INT__FMT64 "u" -#endif -#if defined(@KWIML@_INT_HAVE_UINT64_T) && defined(SCNu64) \ - && !defined(@KWIML@_INT_BROKEN_SCNu64) -# define @KWIML@_INT_SCNu64 SCNu64 -#elif defined(@KWIML@_INT__FMT64) && !defined(@KWIML@_INT__NO_SCN64) -# define @KWIML@_INT_SCNu64 @KWIML@_INT__FMT64 "u" -#endif -#if defined(@KWIML@_INT_HAVE_UINT64_T) && defined(PRIx64) \ - && !defined(@KWIML@_INT_BROKEN_PRIx64) -# define @KWIML@_INT_PRIx64 PRIx64 -#elif defined(@KWIML@_INT__FMT64) -# define @KWIML@_INT_PRIx64 @KWIML@_INT__FMT64 "x" -#endif -#if defined(@KWIML@_INT_HAVE_UINT64_T) && defined(SCNx64) \ - && !defined(@KWIML@_INT_BROKEN_SCNx64) -# define @KWIML@_INT_SCNx64 SCNx64 -#elif defined(@KWIML@_INT__FMT64) && !defined(@KWIML@_INT__NO_SCN64) -# define @KWIML@_INT_SCNx64 @KWIML@_INT__FMT64 "x" -#endif -#if defined(@KWIML@_INT_HAVE_UINT64_T) && defined(PRIX64) \ - && !defined(@KWIML@_INT_BROKEN_PRIX64) -# define @KWIML@_INT_PRIX64 PRIX64 -#elif defined(@KWIML@_INT__FMT64) -# define @KWIML@_INT_PRIX64 @KWIML@_INT__FMT64 "X" -#endif - -/* 64-bit constants */ -#if defined(@KWIML@_INT_HAVE_INT64_T) && defined(INT64_C) \ - && !defined(@KWIML@_INT_BROKEN_INT64_C) -# define @KWIML@_INT_INT64_C(c) INT64_C(c) -#elif @KWIML@_ABI_SIZEOF_LONG == 8 -# define @KWIML@_INT_INT64_C(c) c ## l -#elif defined(@KWIML@_ABI_SIZEOF_LONG_LONG) && @KWIML@_ABI_SIZEOF_LONG_LONG == 8 -# define @KWIML@_INT_INT64_C(c) c ## ll -#elif defined(@KWIML@_ABI_SIZEOF___INT64) -# define @KWIML@_INT_INT64_C(c) c ## i64 -#endif -#if defined(@KWIML@_INT_HAVE_UINT64_T) && defined(UINT64_C) \ - && !defined(@KWIML@_INT_BROKEN_UINT64_C) -# define @KWIML@_INT_UINT64_C(c) UINT64_C(c) -#elif @KWIML@_ABI_SIZEOF_LONG == 8 -# define @KWIML@_INT_UINT64_C(c) c ## ul -#elif defined(@KWIML@_ABI_SIZEOF_LONG_LONG) && @KWIML@_ABI_SIZEOF_LONG_LONG == 8 -# define @KWIML@_INT_UINT64_C(c) c ## ull -#elif defined(@KWIML@_ABI_SIZEOF___INT64) -# define @KWIML@_INT_UINT64_C(c) c ## ui64 -#endif - -/*--------------------------------------------------------------------------*/ -#if defined(@KWIML@_INT_HAVE_INTPTR_T) -# define @KWIML@_INT_intptr_t intptr_t -#elif @KWIML@_ABI_SIZEOF_DATA_PTR == 4 -# define @KWIML@_INT_intptr_t @KWIML@_INT_int32_t -#elif !defined(@KWIML@_INT_NO_INT64_T) -# define @KWIML@_INT_intptr_t @KWIML@_INT_int64_t -#elif defined(@KWIML@_INT_NO_ERROR_INTPTR_T) -# define @KWIML@_INT_NO_INTPTR_T -#else -# error "No type known for 'intptr_t'." -#endif -#if defined(@KWIML@_INT_HAVE_UINTPTR_T) -# define @KWIML@_INT_uintptr_t uintptr_t -#elif @KWIML@_ABI_SIZEOF_DATA_PTR == 4 -# define @KWIML@_INT_uintptr_t @KWIML@_INT_uint32_t -#elif !defined(@KWIML@_INT_NO_UINT64_T) -# define @KWIML@_INT_uintptr_t @KWIML@_INT_uint64_t -#elif defined(@KWIML@_INT_NO_ERROR_UINTPTR_T) -# define @KWIML@_INT_NO_UINTPTR_T -#else -# error "No type known for 'uintptr_t'." -#endif - -#if defined(@KWIML@_INT_HAVE_INTPTR_T) && defined(PRIdPTR) \ - && !defined(@KWIML@_INT_BROKEN_PRIdPTR) -# define @KWIML@_INT_PRIdPTR PRIdPTR -#elif @KWIML@_ABI_SIZEOF_DATA_PTR == 4 -# define @KWIML@_INT_PRIdPTR @KWIML@_INT_PRId32 -#elif !defined(@KWIML@_INT_NO_UINT64_T) -# define @KWIML@_INT_PRIdPTR @KWIML@_INT_PRId64 -#endif -#if defined(@KWIML@_INT_HAVE_INTPTR_T) && defined(SCNdPTR) \ - && !defined(@KWIML@_INT_BROKEN_SCNdPTR) -# define @KWIML@_INT_SCNdPTR SCNdPTR -#elif @KWIML@_ABI_SIZEOF_DATA_PTR == 4 -# define @KWIML@_INT_SCNdPTR @KWIML@_INT_SCNd32 -#elif !defined(@KWIML@_INT_NO_UINT64_T) -# define @KWIML@_INT_SCNdPTR @KWIML@_INT_SCNd64 -#endif -#if defined(@KWIML@_INT_HAVE_INTPTR_T) && defined(PRIiPTR) \ - && !defined(@KWIML@_INT_BROKEN_PRIiPTR) -# define @KWIML@_INT_PRIiPTR PRIiPTR -#elif @KWIML@_ABI_SIZEOF_DATA_PTR == 4 -# define @KWIML@_INT_PRIiPTR @KWIML@_INT_PRIi32 -#elif !defined(@KWIML@_INT_NO_UINT64_T) -# define @KWIML@_INT_PRIiPTR @KWIML@_INT_PRIi64 -#endif -#if defined(@KWIML@_INT_HAVE_INTPTR_T) && defined(SCNiPTR) \ - && !defined(@KWIML@_INT_BROKEN_SCNiPTR) -# define @KWIML@_INT_SCNiPTR SCNiPTR -#elif @KWIML@_ABI_SIZEOF_DATA_PTR == 4 -# define @KWIML@_INT_SCNiPTR @KWIML@_INT_SCNi32 -#elif !defined(@KWIML@_INT_NO_UINT64_T) -# define @KWIML@_INT_SCNiPTR @KWIML@_INT_SCNi64 -#endif - -#if defined(@KWIML@_INT_HAVE_UINTPTR_T) && defined(PRIoPTR) \ - && !defined(@KWIML@_INT_BROKEN_PRIoPTR) -# define @KWIML@_INT_PRIoPTR PRIoPTR -#elif @KWIML@_ABI_SIZEOF_DATA_PTR == 4 -# define @KWIML@_INT_PRIoPTR @KWIML@_INT_PRIo32 -#elif !defined(@KWIML@_INT_NO_UINT64_T) -# define @KWIML@_INT_PRIoPTR @KWIML@_INT_PRIo64 -#endif -#if defined(@KWIML@_INT_HAVE_UINTPTR_T) && defined(SCNoPTR) \ - && !defined(@KWIML@_INT_BROKEN_SCNoPTR) -# define @KWIML@_INT_SCNoPTR SCNoPTR -#elif @KWIML@_ABI_SIZEOF_DATA_PTR == 4 -# define @KWIML@_INT_SCNoPTR @KWIML@_INT_SCNo32 -#elif !defined(@KWIML@_INT_NO_UINT64_T) -# define @KWIML@_INT_SCNoPTR @KWIML@_INT_SCNo64 -#endif -#if defined(@KWIML@_INT_HAVE_UINTPTR_T) && defined(PRIuPTR) \ - && !defined(@KWIML@_INT_BROKEN_PRIuPTR) -# define @KWIML@_INT_PRIuPTR PRIuPTR -#elif @KWIML@_ABI_SIZEOF_DATA_PTR == 4 -# define @KWIML@_INT_PRIuPTR @KWIML@_INT_PRIu32 -#elif !defined(@KWIML@_INT_NO_UINT64_T) -# define @KWIML@_INT_PRIuPTR @KWIML@_INT_PRIu64 -#endif -#if defined(@KWIML@_INT_HAVE_UINTPTR_T) && defined(SCNuPTR) \ - && !defined(@KWIML@_INT_BROKEN_SCNuPTR) -# define @KWIML@_INT_SCNuPTR SCNuPTR -#elif @KWIML@_ABI_SIZEOF_DATA_PTR == 4 -# define @KWIML@_INT_SCNuPTR @KWIML@_INT_SCNu32 -#elif !defined(@KWIML@_INT_NO_UINT64_T) -# define @KWIML@_INT_SCNuPTR @KWIML@_INT_SCNu64 -#endif -#if defined(@KWIML@_INT_HAVE_UINTPTR_T) && defined(PRIxPTR) \ - && !defined(@KWIML@_INT_BROKEN_PRIxPTR) -# define @KWIML@_INT_PRIxPTR PRIxPTR -#elif @KWIML@_ABI_SIZEOF_DATA_PTR == 4 -# define @KWIML@_INT_PRIxPTR @KWIML@_INT_PRIx32 -#elif !defined(@KWIML@_INT_NO_UINT64_T) -# define @KWIML@_INT_PRIxPTR @KWIML@_INT_PRIx64 -#endif -#if defined(@KWIML@_INT_HAVE_UINTPTR_T) && defined(SCNxPTR) \ - && !defined(@KWIML@_INT_BROKEN_SCNxPTR) -# define @KWIML@_INT_SCNxPTR SCNxPTR -#elif @KWIML@_ABI_SIZEOF_DATA_PTR == 4 -# define @KWIML@_INT_SCNxPTR @KWIML@_INT_SCNx32 -#elif !defined(@KWIML@_INT_NO_UINT64_T) -# define @KWIML@_INT_SCNxPTR @KWIML@_INT_SCNx64 -#endif -#if defined(@KWIML@_INT_HAVE_UINTPTR_T) && defined(PRIXPTR) \ - && !defined(@KWIML@_INT_BROKEN_PRIXPTR) -# define @KWIML@_INT_PRIXPTR PRIXPTR -#elif @KWIML@_ABI_SIZEOF_DATA_PTR == 4 -# define @KWIML@_INT_PRIXPTR @KWIML@_INT_PRIX32 -#elif !defined(@KWIML@_INT_NO_UINT64_T) -# define @KWIML@_INT_PRIXPTR @KWIML@_INT_PRIX64 -#endif - -/*--------------------------------------------------------------------------*/ -#if !defined(@KWIML@_INT_NO_VERIFY) -#define @KWIML@_INT__VERIFY(n, x, y) extern int (*n)[x]; extern int (*n)[y] -#define @KWIML@_INT__VERIFY_BOOL(m, b) @KWIML@_INT__VERIFY(m##__VERIFY__, 2, (b)?2:3) -#define @KWIML@_INT__VERIFY_TYPE(t, s) @KWIML@_INT__VERIFY(t##__VERIFY__, s, sizeof(t)) -#define @KWIML@_INT__VERIFY_SIGN(t, u, o) @KWIML@_INT__VERIFY_BOOL(t##__SIGN, (t)((u)1 << ((sizeof(t)<<3)-1)) o 0) - -@KWIML@_INT__VERIFY_TYPE(@KWIML@_INT_int8_t, 1); -@KWIML@_INT__VERIFY_TYPE(@KWIML@_INT_uint8_t, 1); -@KWIML@_INT__VERIFY_TYPE(@KWIML@_INT_int16_t, 2); -@KWIML@_INT__VERIFY_TYPE(@KWIML@_INT_uint16_t, 2); -@KWIML@_INT__VERIFY_TYPE(@KWIML@_INT_int32_t, 4); -@KWIML@_INT__VERIFY_TYPE(@KWIML@_INT_uint32_t, 4); -#if !defined(@KWIML@_INT_NO_INT64_T) -@KWIML@_INT__VERIFY_TYPE(@KWIML@_INT_int64_t, 8); -#endif -#if !defined(@KWIML@_INT_NO_UINT64_T) -@KWIML@_INT__VERIFY_TYPE(@KWIML@_INT_uint64_t, 8); -#endif -#if !defined(@KWIML@_INT_NO_INTPTR_T) -@KWIML@_INT__VERIFY_TYPE(@KWIML@_INT_intptr_t, sizeof(void*)); -#endif -#if !defined(@KWIML@_INT_NO_UINTPTR_T) -@KWIML@_INT__VERIFY_TYPE(@KWIML@_INT_uintptr_t, sizeof(void*)); -#endif - -@KWIML@_INT__VERIFY_SIGN(@KWIML@_INT_int8_t, @KWIML@_INT_uint8_t, <); -@KWIML@_INT__VERIFY_SIGN(@KWIML@_INT_uint8_t, @KWIML@_INT_uint8_t, >); -@KWIML@_INT__VERIFY_SIGN(@KWIML@_INT_int16_t, @KWIML@_INT_uint16_t, <); -@KWIML@_INT__VERIFY_SIGN(@KWIML@_INT_uint16_t, @KWIML@_INT_uint16_t, >); -@KWIML@_INT__VERIFY_SIGN(@KWIML@_INT_int32_t, @KWIML@_INT_uint32_t, <); -@KWIML@_INT__VERIFY_SIGN(@KWIML@_INT_uint32_t, @KWIML@_INT_uint32_t, >); -#if !defined(@KWIML@_INT_NO_INT64_T) -@KWIML@_INT__VERIFY_SIGN(@KWIML@_INT_int64_t, @KWIML@_INT_uint64_t, <); -#endif -#if !defined(@KWIML@_INT_NO_UINT64_T) -@KWIML@_INT__VERIFY_SIGN(@KWIML@_INT_uint64_t, @KWIML@_INT_uint64_t, >); -#endif -#if !defined(@KWIML@_INT_NO_INTPTR_T) -@KWIML@_INT__VERIFY_SIGN(@KWIML@_INT_intptr_t, @KWIML@_INT_uintptr_t, <); -#endif -#if !defined(@KWIML@_INT_NO_UINTPTR_T) -@KWIML@_INT__VERIFY_SIGN(@KWIML@_INT_uintptr_t, @KWIML@_INT_uintptr_t, >); -#endif - -#undef @KWIML@_INT__VERIFY_SIGN -#undef @KWIML@_INT__VERIFY_TYPE -#undef @KWIML@_INT__VERIFY_BOOL -#undef @KWIML@_INT__VERIFY - -#endif - -#endif |