wok-next rev 19664

syslinux: use latest official miniacc.h to fix "error: variably modified '__acc_cta' at file scope"
http://stackoverflow.com/questions/1712592/variably-modified-array-at-file-scope
author Aleksej Bobylev <al.bobylev@gmail.com>
date Fri Mar 17 14:36:11 2017 +0200 (2017-03-17)
parents 3a6b97ad0a64
children 86c08d7241a3
files syslinux/receipt syslinux/stuff/slitaz-next/miniacc.h
line diff
     1.1 --- a/syslinux/receipt	Fri Mar 17 12:37:35 2017 +0200
     1.2 +++ b/syslinux/receipt	Fri Mar 17 14:36:11 2017 +0200
     1.3 @@ -14,8 +14,8 @@
     1.4  TAGS="boot"
     1.5  
     1.6  DEPENDS="ipxe memtest"
     1.7 -BUILD_DEPENDS="wget kbd-base perl nasm dev86 lzma mingw32-gcc upx posixovl \
     1.8 -util-linux-uuid-dev advancecomp libidn linld"
     1.9 +BUILD_DEPENDS="kbd-base perl nasm dev86 lzma mingw32-gcc upx posixovl \
    1.10 +util-linux-uuid-dev advancecomp libidn linld python"
    1.11  
    1.12  # Rules to gen a SliTaz package suitable for Tazpkg.
    1.13  compile_rules()
    1.14 @@ -25,6 +25,7 @@
    1.15  	patch -p 0 < $stuff/extra/iso9660.u
    1.16  	patch -p 0 < $stuff/extra/readconfig.u
    1.17  	#patch -p 0 < $stuff/extra/fs.u
    1.18 +	cp -f $stuff/slitaz-next/miniacc.h $src/lzo/src/ # use latest https://raw.githubusercontent.com/upx/upx/master/src/miniacc.h
    1.19  	cp $stuff/tools/isohybrid.sh .
    1.20  	cp $stuff/extra/md5sum.c com32/modules
    1.21  	grep -q md5sum.c32 com32/modules/Makefile ||
     2.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     2.2 +++ b/syslinux/stuff/slitaz-next/miniacc.h	Fri Mar 17 14:36:11 2017 +0200
     2.3 @@ -0,0 +1,7931 @@
     2.4 +/* ACC --- Automatic Compiler Configuration
     2.5 +
     2.6 +   This file is part of the UPX executable compressor.
     2.7 +
     2.8 +   Copyright (C) 1996-2017 Markus Franz Xaver Johannes Oberhumer
     2.9 +   All Rights Reserved.
    2.10 +
    2.11 +   UPX and the UCL library are free software; you can redistribute them
    2.12 +   and/or modify them under the terms of the GNU General Public License as
    2.13 +   published by the Free Software Foundation; either version 2 of
    2.14 +   the License, or (at your option) any later version.
    2.15 +
    2.16 +   This program is distributed in the hope that it will be useful,
    2.17 +   but WITHOUT ANY WARRANTY; without even the implied warranty of
    2.18 +   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    2.19 +   GNU General Public License for more details.
    2.20 +
    2.21 +   You should have received a copy of the GNU General Public License
    2.22 +   along with this program; see the file COPYING.
    2.23 +   If not, write to the Free Software Foundation, Inc.,
    2.24 +   51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
    2.25 +
    2.26 +   Markus F.X.J. Oberhumer
    2.27 +   <markus@oberhumer.com>
    2.28 +   http://www.oberhumer.com/
    2.29 + */
    2.30 +
    2.31 +#ifndef __ACC_H_INCLUDED
    2.32 +#define __ACC_H_INCLUDED 1
    2.33 +#define ACC_VERSION     20170125L
    2.34 +#if defined(__CYGWIN32__) && !defined(__CYGWIN__)
    2.35 +#  define __CYGWIN__ __CYGWIN32__
    2.36 +#endif
    2.37 +#if 1 && defined(__INTERIX) && defined(__GNUC__) && !defined(_ALL_SOURCE)
    2.38 +#  define _ALL_SOURCE 1
    2.39 +#endif
    2.40 +#if defined(__mips__) && defined(__R5900__)
    2.41 +#  if !defined(__LONG_MAX__)
    2.42 +#    define __LONG_MAX__ 9223372036854775807L
    2.43 +#  endif
    2.44 +#endif
    2.45 +#if 0
    2.46 +#elif !defined(__ACC_LANG_OVERRIDE)
    2.47 +#if (defined(__clang__) || defined(__GNUC__)) && defined(__ASSEMBLER__)
    2.48 +#  if (__ASSEMBLER__+0) <= 0
    2.49 +#    error "__ASSEMBLER__"
    2.50 +#  else
    2.51 +#    define ACC_LANG_ASSEMBLER  1
    2.52 +#  endif
    2.53 +#elif defined(__cplusplus)
    2.54 +#  if (__cplusplus+0) <= 0
    2.55 +#    error "__cplusplus"
    2.56 +#  elif (__cplusplus < 199711L)
    2.57 +#    define ACC_LANG_CXX        1
    2.58 +#  elif defined(_MSC_VER) && defined(_MSVC_LANG) && (_MSVC_LANG+0 >= 201402L) && 1
    2.59 +#    define ACC_LANG_CXX        _MSVC_LANG
    2.60 +#  else
    2.61 +#    define ACC_LANG_CXX        __cplusplus
    2.62 +#  endif
    2.63 +#  define ACC_LANG_CPLUSPLUS    ACC_LANG_CXX
    2.64 +#else
    2.65 +#  if defined(__STDC_VERSION__) && (__STDC_VERSION__+0 >= 199409L)
    2.66 +#    define ACC_LANG_C          __STDC_VERSION__
    2.67 +#  else
    2.68 +#    define ACC_LANG_C          1
    2.69 +#  endif
    2.70 +#endif
    2.71 +#endif
    2.72 +#if !defined(ACC_CFG_NO_DISABLE_WUNDEF)
    2.73 +#if defined(__ARMCC_VERSION)
    2.74 +#  pragma diag_suppress 193
    2.75 +#elif defined(__clang__) && defined(__clang_minor__)
    2.76 +#  pragma clang diagnostic ignored "-Wundef"
    2.77 +#elif defined(__INTEL_COMPILER)
    2.78 +#  pragma warning(disable: 193)
    2.79 +#elif defined(__KEIL__) && defined(__C166__)
    2.80 +#  pragma warning disable = 322
    2.81 +#elif defined(__GNUC__) && defined(__GNUC_MINOR__) && !defined(__PATHSCALE__)
    2.82 +#  if ((__GNUC__-0) >= 5 || ((__GNUC__-0) == 4 && (__GNUC_MINOR__-0) >= 2))
    2.83 +#    pragma GCC diagnostic ignored "-Wundef"
    2.84 +#  endif
    2.85 +#elif defined(_MSC_VER) && !defined(__clang__) && !defined(__INTEL_COMPILER) && !defined(__MWERKS__)
    2.86 +#  if ((_MSC_VER-0) >= 1300)
    2.87 +#    pragma warning(disable: 4668)
    2.88 +#  endif
    2.89 +#endif
    2.90 +#endif
    2.91 +#if 0 && defined(__POCC__) && defined(_WIN32)
    2.92 +#  if (__POCC__ >= 400)
    2.93 +#    pragma warn(disable: 2216)
    2.94 +#  endif
    2.95 +#endif
    2.96 +#if 0 && defined(__WATCOMC__)
    2.97 +#  if (__WATCOMC__ >= 1050) && (__WATCOMC__ < 1060)
    2.98 +#    pragma warning 203 9
    2.99 +#  endif
   2.100 +#endif
   2.101 +#if defined(__BORLANDC__) && defined(__MSDOS__) && !defined(__FLAT__)
   2.102 +#  pragma option -h
   2.103 +#endif
   2.104 +#if !(ACC_CFG_NO_DISABLE_WCRTNONSTDC)
   2.105 +#ifndef _CRT_NONSTDC_NO_DEPRECATE
   2.106 +#define _CRT_NONSTDC_NO_DEPRECATE 1
   2.107 +#endif
   2.108 +#ifndef _CRT_NONSTDC_NO_WARNINGS
   2.109 +#define _CRT_NONSTDC_NO_WARNINGS 1
   2.110 +#endif
   2.111 +#ifndef _CRT_SECURE_NO_DEPRECATE
   2.112 +#define _CRT_SECURE_NO_DEPRECATE 1
   2.113 +#endif
   2.114 +#ifndef _CRT_SECURE_NO_WARNINGS
   2.115 +#define _CRT_SECURE_NO_WARNINGS 1
   2.116 +#endif
   2.117 +#endif
   2.118 +#if (ACC_CFG_NO_CONFIG_HEADER)
   2.119 +#elif defined(ACC_CFG_CONFIG_HEADER)
   2.120 +#  include ACC_CFG_CONFIG_HEADER
   2.121 +#else
   2.122 +#endif
   2.123 +#if (ACC_CFG_NO_LIMITS_H)
   2.124 +#elif (ACC_LIBC_NAKED) || (ACC_BROKEN_LIMITS_H)
   2.125 +#ifndef __ACC_FALLBACK_LIMITS_H_INCLUDED
   2.126 +#define __ACC_FALLBACK_LIMITS_H_INCLUDED 1
   2.127 +#undef CHAR_BIT
   2.128 +#define CHAR_BIT        8
   2.129 +#ifndef MB_LEN_MAX
   2.130 +#define MB_LEN_MAX      1
   2.131 +#endif
   2.132 +#ifndef __SCHAR_MAX__
   2.133 +#define __SCHAR_MAX__   127
   2.134 +#endif
   2.135 +#ifndef __SHRT_MAX__
   2.136 +#define __SHRT_MAX__    32767
   2.137 +#endif
   2.138 +#ifndef __INT_MAX__
   2.139 +#define __INT_MAX__     2147483647
   2.140 +#endif
   2.141 +#ifndef __LONG_MAX__
   2.142 +#if defined(_ILP32) || defined(__ILP32__)
   2.143 +#define __LONG_MAX__    2147483647L
   2.144 +#elif defined(__alpha__) || defined(_LP64) || defined(__MIPS_PSX2__)
   2.145 +#define __LONG_MAX__    9223372036854775807L
   2.146 +#else
   2.147 +#define __LONG_MAX__    2147483647L
   2.148 +#endif
   2.149 +#endif
   2.150 +#undef SCHAR_MIN
   2.151 +#undef SCHAR_MAX
   2.152 +#undef UCHAR_MAX
   2.153 +#define SCHAR_MIN       (-1 - SCHAR_MAX)
   2.154 +#define SCHAR_MAX       (__SCHAR_MAX__)
   2.155 +#define UCHAR_MAX       (SCHAR_MAX * 2 + 1)
   2.156 +#undef SHRT_MIN
   2.157 +#undef SHRT_MAX
   2.158 +#undef USHRT_MAX
   2.159 +#define SHRT_MIN        (-1 - SHRT_MAX)
   2.160 +#define SHRT_MAX        (__SHRT_MAX__)
   2.161 +#if ((__INT_MAX__) == (__SHRT_MAX__))
   2.162 +#define USHRT_MAX       (SHRT_MAX * 2U + 1U)
   2.163 +#else
   2.164 +#define USHRT_MAX       (SHRT_MAX * 2 + 1)
   2.165 +#endif
   2.166 +#undef INT_MIN
   2.167 +#undef INT_MAX
   2.168 +#undef UINT_MAX
   2.169 +#define INT_MIN         (-1 - INT_MAX)
   2.170 +#define INT_MAX         (__INT_MAX__)
   2.171 +#define UINT_MAX        (INT_MAX * 2U + 1U)
   2.172 +#undef LONG_MIN
   2.173 +#undef LONG_MAX
   2.174 +#undef ULONG_MAX
   2.175 +#define LONG_MIN        (-1L - LONG_MAX)
   2.176 +#define LONG_MAX        ((__LONG_MAX__) + 0L)
   2.177 +#define ULONG_MAX       (LONG_MAX * 2UL + 1UL)
   2.178 +#undef CHAR_MIN
   2.179 +#undef CHAR_MAX
   2.180 +#if defined(__CHAR_UNSIGNED__) || defined(_CHAR_UNSIGNED)
   2.181 +#define CHAR_MIN        0
   2.182 +#define CHAR_MAX        UCHAR_MAX
   2.183 +#else
   2.184 +#define CHAR_MIN        SCHAR_MIN
   2.185 +#define CHAR_MAX        SCHAR_MAX
   2.186 +#endif
   2.187 +#endif
   2.188 +#else
   2.189 +#  include <limits.h>
   2.190 +#endif
   2.191 +#if 0
   2.192 +#define ACC_0xffffUL            0xfffful
   2.193 +#define ACC_0xffffffffUL        0xfffffffful
   2.194 +#else
   2.195 +#define ACC_0xffffUL            65535ul
   2.196 +#define ACC_0xffffffffUL        4294967295ul
   2.197 +#endif
   2.198 +#define ACC_0xffffL             ACC_0xffffUL
   2.199 +#define ACC_0xffffffffL         ACC_0xffffffffUL
   2.200 +#if (ACC_0xffffL == ACC_0xffffffffL)
   2.201 +#  error "your preprocessor is broken 1"
   2.202 +#endif
   2.203 +#if (16ul * 16384ul != 262144ul)
   2.204 +#  error "your preprocessor is broken 2"
   2.205 +#endif
   2.206 +#if 0
   2.207 +#if (32767 >= 4294967295ul)
   2.208 +#  error "your preprocessor is broken 3"
   2.209 +#endif
   2.210 +#if (65535u >= 4294967295ul)
   2.211 +#  error "your preprocessor is broken 4"
   2.212 +#endif
   2.213 +#endif
   2.214 +#if defined(__COUNTER__)
   2.215 +#  ifndef ACC_CFG_USE_COUNTER
   2.216 +#  define ACC_CFG_USE_COUNTER 1
   2.217 +#  endif
   2.218 +#else
   2.219 +#  undef ACC_CFG_USE_COUNTER
   2.220 +#endif
   2.221 +#if (UINT_MAX == ACC_0xffffL)
   2.222 +#if defined(__ZTC__) && defined(__I86__) && !defined(__OS2__)
   2.223 +#  if !defined(MSDOS)
   2.224 +#    define MSDOS 1
   2.225 +#  endif
   2.226 +#  if !defined(_MSDOS)
   2.227 +#    define _MSDOS 1
   2.228 +#  endif
   2.229 +#elif 0 && defined(__VERSION) && defined(MB_LEN_MAX)
   2.230 +#  if (__VERSION == 520) && (MB_LEN_MAX == 1)
   2.231 +#    if !defined(__AZTEC_C__)
   2.232 +#      define __AZTEC_C__ __VERSION
   2.233 +#    endif
   2.234 +#    if !defined(__DOS__)
   2.235 +#      define __DOS__ 1
   2.236 +#    endif
   2.237 +#  endif
   2.238 +#endif
   2.239 +#endif
   2.240 +#if (UINT_MAX == ACC_0xffffL)
   2.241 +#if defined(_MSC_VER) && defined(M_I86HM)
   2.242 +#  define ptrdiff_t long
   2.243 +#  define _PTRDIFF_T_DEFINED 1
   2.244 +#endif
   2.245 +#endif
   2.246 +#if (UINT_MAX == ACC_0xffffL)
   2.247 +#  undef __ACC_RENAME_A
   2.248 +#  undef __ACC_RENAME_B
   2.249 +#  if defined(__AZTEC_C__) && defined(__DOS__)
   2.250 +#    define __ACC_RENAME_A 1
   2.251 +#  elif defined(_MSC_VER) && defined(MSDOS)
   2.252 +#    if (_MSC_VER < 600)
   2.253 +#      define __ACC_RENAME_A 1
   2.254 +#    elif (_MSC_VER < 700)
   2.255 +#      define __ACC_RENAME_B 1
   2.256 +#    endif
   2.257 +#  elif defined(__TSC__) && defined(__OS2__)
   2.258 +#    define __ACC_RENAME_A 1
   2.259 +#  elif defined(__MSDOS__) && defined(__TURBOC__) && (__TURBOC__ < 0x0410)
   2.260 +#    define __ACC_RENAME_A 1
   2.261 +#  elif defined(__PACIFIC__) && defined(DOS)
   2.262 +#    if !defined(__far)
   2.263 +#      define __far far
   2.264 +#    endif
   2.265 +#    if !defined(__near)
   2.266 +#      define __near near
   2.267 +#    endif
   2.268 +#  endif
   2.269 +#  if defined(__ACC_RENAME_A)
   2.270 +#    if !defined(__cdecl)
   2.271 +#      define __cdecl cdecl
   2.272 +#    endif
   2.273 +#    if !defined(__far)
   2.274 +#      define __far far
   2.275 +#    endif
   2.276 +#    if !defined(__huge)
   2.277 +#      define __huge huge
   2.278 +#    endif
   2.279 +#    if !defined(__near)
   2.280 +#      define __near near
   2.281 +#    endif
   2.282 +#    if !defined(__pascal)
   2.283 +#      define __pascal pascal
   2.284 +#    endif
   2.285 +#    if !defined(__huge)
   2.286 +#      define __huge huge
   2.287 +#    endif
   2.288 +#  elif defined(__ACC_RENAME_B)
   2.289 +#    if !defined(__cdecl)
   2.290 +#      define __cdecl _cdecl
   2.291 +#    endif
   2.292 +#    if !defined(__far)
   2.293 +#      define __far _far
   2.294 +#    endif
   2.295 +#    if !defined(__huge)
   2.296 +#      define __huge _huge
   2.297 +#    endif
   2.298 +#    if !defined(__near)
   2.299 +#      define __near _near
   2.300 +#    endif
   2.301 +#    if !defined(__pascal)
   2.302 +#      define __pascal _pascal
   2.303 +#    endif
   2.304 +#  elif (defined(__PUREC__) || defined(__TURBOC__)) && defined(__TOS__)
   2.305 +#    if !defined(__cdecl)
   2.306 +#      define __cdecl cdecl
   2.307 +#    endif
   2.308 +#    if !defined(__pascal)
   2.309 +#      define __pascal pascal
   2.310 +#    endif
   2.311 +#  endif
   2.312 +#  undef __ACC_RENAME_A
   2.313 +#  undef __ACC_RENAME_B
   2.314 +#endif
   2.315 +#if (UINT_MAX == ACC_0xffffL)
   2.316 +#if defined(__AZTEC_C__) && defined(__DOS__)
   2.317 +#  define ACC_BROKEN_CDECL_ALT_SYNTAX 1
   2.318 +#elif defined(_MSC_VER) && defined(MSDOS)
   2.319 +#  if (_MSC_VER < 600)
   2.320 +#    define ACC_BROKEN_INTEGRAL_CONSTANTS 1
   2.321 +#  endif
   2.322 +#  if (_MSC_VER < 700)
   2.323 +#    define ACC_BROKEN_INTEGRAL_PROMOTION 1
   2.324 +#    define ACC_BROKEN_SIZEOF 1
   2.325 +#  endif
   2.326 +#elif defined(__PACIFIC__) && defined(DOS)
   2.327 +#  define ACC_BROKEN_INTEGRAL_CONSTANTS 1
   2.328 +#elif defined(__TURBOC__) && defined(__MSDOS__)
   2.329 +#  if (__TURBOC__ < 0x0150)
   2.330 +#    define ACC_BROKEN_CDECL_ALT_SYNTAX 1
   2.331 +#    define ACC_BROKEN_INTEGRAL_CONSTANTS 1
   2.332 +#    define ACC_BROKEN_INTEGRAL_PROMOTION 1
   2.333 +#  endif
   2.334 +#  if (__TURBOC__ < 0x0200)
   2.335 +#    define ACC_BROKEN_SIZEOF 1
   2.336 +#  endif
   2.337 +#  if (__TURBOC__ < 0x0400) && defined(__cplusplus)
   2.338 +#    define ACC_BROKEN_CDECL_ALT_SYNTAX 1
   2.339 +#  endif
   2.340 +#elif (defined(__PUREC__) || defined(__TURBOC__)) && defined(__TOS__)
   2.341 +#  define ACC_BROKEN_CDECL_ALT_SYNTAX 1
   2.342 +#  define ACC_BROKEN_SIZEOF 1
   2.343 +#endif
   2.344 +#endif
   2.345 +#if defined(__WATCOMC__) && (__WATCOMC__ < 900)
   2.346 +#  define ACC_BROKEN_INTEGRAL_CONSTANTS 1
   2.347 +#endif
   2.348 +#if defined(_CRAY) && defined(_CRAY1)
   2.349 +#  define ACC_BROKEN_SIGNED_RIGHT_SHIFT 1
   2.350 +#endif
   2.351 +#define ACC_PP_STRINGIZE(x)             #x
   2.352 +#define ACC_PP_MACRO_EXPAND(x)          ACC_PP_STRINGIZE(x)
   2.353 +#define ACC_PP_CONCAT0()                /*empty*/
   2.354 +#define ACC_PP_CONCAT1(a)               a
   2.355 +#define ACC_PP_CONCAT2(a,b)             a ## b
   2.356 +#define ACC_PP_CONCAT3(a,b,c)           a ## b ## c
   2.357 +#define ACC_PP_CONCAT4(a,b,c,d)         a ## b ## c ## d
   2.358 +#define ACC_PP_CONCAT5(a,b,c,d,e)       a ## b ## c ## d ## e
   2.359 +#define ACC_PP_CONCAT6(a,b,c,d,e,f)     a ## b ## c ## d ## e ## f
   2.360 +#define ACC_PP_CONCAT7(a,b,c,d,e,f,g)   a ## b ## c ## d ## e ## f ## g
   2.361 +#define ACC_PP_ECONCAT0()               ACC_PP_CONCAT0()
   2.362 +#define ACC_PP_ECONCAT1(a)              ACC_PP_CONCAT1(a)
   2.363 +#define ACC_PP_ECONCAT2(a,b)            ACC_PP_CONCAT2(a,b)
   2.364 +#define ACC_PP_ECONCAT3(a,b,c)          ACC_PP_CONCAT3(a,b,c)
   2.365 +#define ACC_PP_ECONCAT4(a,b,c,d)        ACC_PP_CONCAT4(a,b,c,d)
   2.366 +#define ACC_PP_ECONCAT5(a,b,c,d,e)      ACC_PP_CONCAT5(a,b,c,d,e)
   2.367 +#define ACC_PP_ECONCAT6(a,b,c,d,e,f)    ACC_PP_CONCAT6(a,b,c,d,e,f)
   2.368 +#define ACC_PP_ECONCAT7(a,b,c,d,e,f,g)  ACC_PP_CONCAT7(a,b,c,d,e,f,g)
   2.369 +#define ACC_PP_EMPTY                    /*empty*/
   2.370 +#define ACC_PP_EMPTY0()                 /*empty*/
   2.371 +#define ACC_PP_EMPTY1(a)                /*empty*/
   2.372 +#define ACC_PP_EMPTY2(a,b)              /*empty*/
   2.373 +#define ACC_PP_EMPTY3(a,b,c)            /*empty*/
   2.374 +#define ACC_PP_EMPTY4(a,b,c,d)          /*empty*/
   2.375 +#define ACC_PP_EMPTY5(a,b,c,d,e)        /*empty*/
   2.376 +#define ACC_PP_EMPTY6(a,b,c,d,e,f)      /*empty*/
   2.377 +#define ACC_PP_EMPTY7(a,b,c,d,e,f,g)    /*empty*/
   2.378 +#if 1
   2.379 +#define ACC_CPP_STRINGIZE(x)            #x
   2.380 +#define ACC_CPP_MACRO_EXPAND(x)         ACC_CPP_STRINGIZE(x)
   2.381 +#define ACC_CPP_CONCAT2(a,b)            a ## b
   2.382 +#define ACC_CPP_CONCAT3(a,b,c)          a ## b ## c
   2.383 +#define ACC_CPP_CONCAT4(a,b,c,d)        a ## b ## c ## d
   2.384 +#define ACC_CPP_CONCAT5(a,b,c,d,e)      a ## b ## c ## d ## e
   2.385 +#define ACC_CPP_CONCAT6(a,b,c,d,e,f)    a ## b ## c ## d ## e ## f
   2.386 +#define ACC_CPP_CONCAT7(a,b,c,d,e,f,g)  a ## b ## c ## d ## e ## f ## g
   2.387 +#define ACC_CPP_ECONCAT2(a,b)           ACC_CPP_CONCAT2(a,b)
   2.388 +#define ACC_CPP_ECONCAT3(a,b,c)         ACC_CPP_CONCAT3(a,b,c)
   2.389 +#define ACC_CPP_ECONCAT4(a,b,c,d)       ACC_CPP_CONCAT4(a,b,c,d)
   2.390 +#define ACC_CPP_ECONCAT5(a,b,c,d,e)     ACC_CPP_CONCAT5(a,b,c,d,e)
   2.391 +#define ACC_CPP_ECONCAT6(a,b,c,d,e,f)   ACC_CPP_CONCAT6(a,b,c,d,e,f)
   2.392 +#define ACC_CPP_ECONCAT7(a,b,c,d,e,f,g) ACC_CPP_CONCAT7(a,b,c,d,e,f,g)
   2.393 +#endif
   2.394 +#define __ACC_MASK_GEN(o,b)     (((((o) << ((b)-((b)!=0))) - (o)) << 1) + (o)*((b)!=0))
   2.395 +#if 1 && defined(__cplusplus)
   2.396 +#  if !defined(__STDC_CONSTANT_MACROS)
   2.397 +#    define __STDC_CONSTANT_MACROS 1
   2.398 +#  endif
   2.399 +#  if !defined(__STDC_LIMIT_MACROS)
   2.400 +#    define __STDC_LIMIT_MACROS 1
   2.401 +#  endif
   2.402 +#endif
   2.403 +#if defined(__cplusplus)
   2.404 +#  define ACC_EXTERN_C          extern "C"
   2.405 +#  define ACC_EXTERN_C_BEGIN    extern "C" {
   2.406 +#  define ACC_EXTERN_C_END      }
   2.407 +#else
   2.408 +#  define ACC_EXTERN_C          extern
   2.409 +#  define ACC_EXTERN_C_BEGIN    /*empty*/
   2.410 +#  define ACC_EXTERN_C_END      /*empty*/
   2.411 +#endif
   2.412 +#if !defined(__ACC_OS_OVERRIDE)
   2.413 +#if (ACC_OS_FREESTANDING)
   2.414 +#  define ACC_INFO_OS           "freestanding"
   2.415 +#elif (ACC_OS_EMBEDDED)
   2.416 +#  define ACC_INFO_OS           "embedded"
   2.417 +#elif 1 && defined(__IAR_SYSTEMS_ICC__)
   2.418 +#  define ACC_OS_EMBEDDED       1
   2.419 +#  define ACC_INFO_OS           "embedded"
   2.420 +#elif defined(__CYGWIN__) && defined(__GNUC__)
   2.421 +#  define ACC_OS_CYGWIN         1
   2.422 +#  define ACC_INFO_OS           "cygwin"
   2.423 +#elif defined(__EMX__) && defined(__GNUC__)
   2.424 +#  define ACC_OS_EMX            1
   2.425 +#  define ACC_INFO_OS           "emx"
   2.426 +#elif defined(__BEOS__)
   2.427 +#  define ACC_OS_BEOS           1
   2.428 +#  define ACC_INFO_OS           "beos"
   2.429 +#elif defined(__Lynx__)
   2.430 +#  define ACC_OS_LYNXOS         1
   2.431 +#  define ACC_INFO_OS           "lynxos"
   2.432 +#elif defined(__OS400__)
   2.433 +#  define ACC_OS_OS400          1
   2.434 +#  define ACC_INFO_OS           "os400"
   2.435 +#elif defined(__QNX__)
   2.436 +#  define ACC_OS_QNX            1
   2.437 +#  define ACC_INFO_OS           "qnx"
   2.438 +#elif defined(__BORLANDC__) && defined(__DPMI32__) && (__BORLANDC__ >= 0x0460)
   2.439 +#  define ACC_OS_DOS32          1
   2.440 +#  define ACC_INFO_OS           "dos32"
   2.441 +#elif defined(__BORLANDC__) && defined(__DPMI16__)
   2.442 +#  define ACC_OS_DOS16          1
   2.443 +#  define ACC_INFO_OS           "dos16"
   2.444 +#elif defined(__ZTC__) && defined(DOS386)
   2.445 +#  define ACC_OS_DOS32          1
   2.446 +#  define ACC_INFO_OS           "dos32"
   2.447 +#elif defined(__OS2__) || defined(__OS2V2__)
   2.448 +#  if (UINT_MAX == ACC_0xffffL)
   2.449 +#    define ACC_OS_OS216        1
   2.450 +#    define ACC_INFO_OS         "os216"
   2.451 +#  elif (UINT_MAX == ACC_0xffffffffL)
   2.452 +#    define ACC_OS_OS2          1
   2.453 +#    define ACC_INFO_OS         "os2"
   2.454 +#  else
   2.455 +#    error "check your limits.h header"
   2.456 +#  endif
   2.457 +#elif defined(__WIN64__) || defined(_WIN64) || defined(WIN64)
   2.458 +#  define ACC_OS_WIN64          1
   2.459 +#  define ACC_INFO_OS           "win64"
   2.460 +#elif defined(__WIN32__) || defined(_WIN32) || defined(WIN32) || defined(__WINDOWS_386__)
   2.461 +#  define ACC_OS_WIN32          1
   2.462 +#  define ACC_INFO_OS           "win32"
   2.463 +#elif defined(__MWERKS__) && defined(__INTEL__)
   2.464 +#  define ACC_OS_WIN32          1
   2.465 +#  define ACC_INFO_OS           "win32"
   2.466 +#elif defined(__WINDOWS__) || defined(_WINDOWS) || defined(_Windows)
   2.467 +#  if (UINT_MAX == ACC_0xffffL)
   2.468 +#    define ACC_OS_WIN16        1
   2.469 +#    define ACC_INFO_OS         "win16"
   2.470 +#  elif (UINT_MAX == ACC_0xffffffffL)
   2.471 +#    define ACC_OS_WIN32        1
   2.472 +#    define ACC_INFO_OS         "win32"
   2.473 +#  else
   2.474 +#    error "check your limits.h header"
   2.475 +#  endif
   2.476 +#elif defined(__DOS__) || defined(__MSDOS__) || defined(_MSDOS) || defined(MSDOS) || (defined(__PACIFIC__) && defined(DOS))
   2.477 +#  if (UINT_MAX == ACC_0xffffL)
   2.478 +#    define ACC_OS_DOS16        1
   2.479 +#    define ACC_INFO_OS         "dos16"
   2.480 +#  elif (UINT_MAX == ACC_0xffffffffL)
   2.481 +#    define ACC_OS_DOS32        1
   2.482 +#    define ACC_INFO_OS         "dos32"
   2.483 +#  else
   2.484 +#    error "check your limits.h header"
   2.485 +#  endif
   2.486 +#elif defined(__WATCOMC__)
   2.487 +#  if defined(__NT__) && (UINT_MAX == ACC_0xffffL)
   2.488 +#    define ACC_OS_DOS16        1
   2.489 +#    define ACC_INFO_OS         "dos16"
   2.490 +#  elif defined(__NT__) && (__WATCOMC__ < 1100)
   2.491 +#    define ACC_OS_WIN32        1
   2.492 +#    define ACC_INFO_OS         "win32"
   2.493 +#  elif defined(__linux__) || defined(__LINUX__)
   2.494 +#    define ACC_OS_POSIX        1
   2.495 +#    define ACC_INFO_OS         "posix"
   2.496 +#  else
   2.497 +#    error "please specify a target using the -bt compiler option"
   2.498 +#  endif
   2.499 +#elif defined(__palmos__)
   2.500 +#  define ACC_OS_PALMOS         1
   2.501 +#  define ACC_INFO_OS           "palmos"
   2.502 +#elif defined(__TOS__) || defined(__atarist__)
   2.503 +#  define ACC_OS_TOS            1
   2.504 +#  define ACC_INFO_OS           "tos"
   2.505 +#elif defined(macintosh) && !defined(__arm__) && !defined(__i386__) && !defined(__ppc__) && !defined(__x64_64__)
   2.506 +#  define ACC_OS_MACCLASSIC     1
   2.507 +#  define ACC_INFO_OS           "macclassic"
   2.508 +#elif defined(__VMS)
   2.509 +#  define ACC_OS_VMS            1
   2.510 +#  define ACC_INFO_OS           "vms"
   2.511 +#elif (defined(__mips__) && defined(__R5900__)) || defined(__MIPS_PSX2__)
   2.512 +#  define ACC_OS_CONSOLE        1
   2.513 +#  define ACC_OS_CONSOLE_PS2    1
   2.514 +#  define ACC_INFO_OS           "console"
   2.515 +#  define ACC_INFO_OS_CONSOLE   "ps2"
   2.516 +#elif defined(__mips__) && defined(__psp__)
   2.517 +#  define ACC_OS_CONSOLE        1
   2.518 +#  define ACC_OS_CONSOLE_PSP    1
   2.519 +#  define ACC_INFO_OS           "console"
   2.520 +#  define ACC_INFO_OS_CONSOLE   "psp"
   2.521 +#else
   2.522 +#  define ACC_OS_POSIX          1
   2.523 +#  define ACC_INFO_OS           "posix"
   2.524 +#endif
   2.525 +#if (ACC_OS_POSIX)
   2.526 +#  if defined(_AIX) || defined(__AIX__) || defined(__aix__)
   2.527 +#    define ACC_OS_POSIX_AIX        1
   2.528 +#    define ACC_INFO_OS_POSIX       "aix"
   2.529 +#  elif defined(__FreeBSD__)
   2.530 +#    define ACC_OS_POSIX_FREEBSD    1
   2.531 +#    define ACC_INFO_OS_POSIX       "freebsd"
   2.532 +#  elif defined(__hpux__) || defined(__hpux)
   2.533 +#    define ACC_OS_POSIX_HPUX       1
   2.534 +#    define ACC_INFO_OS_POSIX       "hpux"
   2.535 +#  elif defined(__INTERIX)
   2.536 +#    define ACC_OS_POSIX_INTERIX    1
   2.537 +#    define ACC_INFO_OS_POSIX       "interix"
   2.538 +#  elif defined(__IRIX__) || defined(__irix__)
   2.539 +#    define ACC_OS_POSIX_IRIX       1
   2.540 +#    define ACC_INFO_OS_POSIX       "irix"
   2.541 +#  elif defined(__linux__) || defined(__linux) || defined(__LINUX__)
   2.542 +#    define ACC_OS_POSIX_LINUX      1
   2.543 +#    define ACC_INFO_OS_POSIX       "linux"
   2.544 +#  elif defined(__APPLE__) && defined(__MACH__)
   2.545 +#    if ((__ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__-0) >= 20000)
   2.546 +#      define ACC_OS_POSIX_DARWIN     1040
   2.547 +#      define ACC_INFO_OS_POSIX       "darwin_iphone"
   2.548 +#    elif ((__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__-0) >= 1040)
   2.549 +#      define ACC_OS_POSIX_DARWIN     __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__
   2.550 +#      define ACC_INFO_OS_POSIX       "darwin"
   2.551 +#    else
   2.552 +#      define ACC_OS_POSIX_DARWIN     1
   2.553 +#      define ACC_INFO_OS_POSIX       "darwin"
   2.554 +#    endif
   2.555 +#    define ACC_OS_POSIX_MACOSX     ACC_OS_POSIX_DARWIN
   2.556 +#  elif defined(__minix__) || defined(__minix)
   2.557 +#    define ACC_OS_POSIX_MINIX      1
   2.558 +#    define ACC_INFO_OS_POSIX       "minix"
   2.559 +#  elif defined(__NetBSD__)
   2.560 +#    define ACC_OS_POSIX_NETBSD     1
   2.561 +#    define ACC_INFO_OS_POSIX       "netbsd"
   2.562 +#  elif defined(__OpenBSD__)
   2.563 +#    define ACC_OS_POSIX_OPENBSD    1
   2.564 +#    define ACC_INFO_OS_POSIX       "openbsd"
   2.565 +#  elif defined(__osf__)
   2.566 +#    define ACC_OS_POSIX_OSF        1
   2.567 +#    define ACC_INFO_OS_POSIX       "osf"
   2.568 +#  elif defined(__solaris__) || defined(__sun)
   2.569 +#    if defined(__SVR4) || defined(__svr4__)
   2.570 +#      define ACC_OS_POSIX_SOLARIS  1
   2.571 +#      define ACC_INFO_OS_POSIX     "solaris"
   2.572 +#    else
   2.573 +#      define ACC_OS_POSIX_SUNOS    1
   2.574 +#      define ACC_INFO_OS_POSIX     "sunos"
   2.575 +#    endif
   2.576 +#  elif defined(__ultrix__) || defined(__ultrix)
   2.577 +#    define ACC_OS_POSIX_ULTRIX     1
   2.578 +#    define ACC_INFO_OS_POSIX       "ultrix"
   2.579 +#  elif defined(_UNICOS)
   2.580 +#    define ACC_OS_POSIX_UNICOS     1
   2.581 +#    define ACC_INFO_OS_POSIX       "unicos"
   2.582 +#  else
   2.583 +#    define ACC_OS_POSIX_UNKNOWN    1
   2.584 +#    define ACC_INFO_OS_POSIX       "unknown"
   2.585 +#  endif
   2.586 +#endif
   2.587 +#endif
   2.588 +#if (ACC_OS_DOS16 || ACC_OS_OS216 || ACC_OS_WIN16)
   2.589 +#  if (UINT_MAX != ACC_0xffffL)
   2.590 +#    error "unexpected configuration - check your compiler defines"
   2.591 +#  endif
   2.592 +#  if (ULONG_MAX != ACC_0xffffffffL)
   2.593 +#    error "unexpected configuration - check your compiler defines"
   2.594 +#  endif
   2.595 +#endif
   2.596 +#if (ACC_OS_DOS32 || ACC_OS_OS2 || ACC_OS_WIN32 || ACC_OS_WIN64)
   2.597 +#  if (UINT_MAX != ACC_0xffffffffL)
   2.598 +#    error "unexpected configuration - check your compiler defines"
   2.599 +#  endif
   2.600 +#  if (ULONG_MAX != ACC_0xffffffffL)
   2.601 +#    error "unexpected configuration - check your compiler defines"
   2.602 +#  endif
   2.603 +#endif
   2.604 +#if defined(CIL) && defined(_GNUCC) && defined(__GNUC__)
   2.605 +#  define ACC_CC_CILLY          1
   2.606 +#  define ACC_INFO_CC           "Cilly"
   2.607 +#  if defined(__CILLY__)
   2.608 +#    define ACC_INFO_CCVER      ACC_PP_MACRO_EXPAND(__CILLY__)
   2.609 +#  else
   2.610 +#    define ACC_INFO_CCVER      "unknown"
   2.611 +#  endif
   2.612 +#elif 0 && defined(SDCC) && defined(__VERSION__) && !defined(__GNUC__)
   2.613 +#  define ACC_CC_SDCC           1
   2.614 +#  define ACC_INFO_CC           "sdcc"
   2.615 +#  define ACC_INFO_CCVER        ACC_PP_MACRO_EXPAND(SDCC)
   2.616 +#elif defined(__PATHSCALE__) && defined(__PATHCC_PATCHLEVEL__)
   2.617 +#  define ACC_CC_PATHSCALE      (__PATHCC__ * 0x10000L + (__PATHCC_MINOR__-0) * 0x100 + (__PATHCC_PATCHLEVEL__-0))
   2.618 +#  define ACC_INFO_CC           "Pathscale C"
   2.619 +#  define ACC_INFO_CCVER        __PATHSCALE__
   2.620 +#  if defined(__GNUC__) && defined(__GNUC_MINOR__) && defined(__VERSION__)
   2.621 +#    define ACC_CC_PATHSCALE_GNUC (__GNUC__ * 0x10000L + (__GNUC_MINOR__-0) * 0x100 + (__GNUC_PATCHLEVEL__-0))
   2.622 +#  endif
   2.623 +#elif defined(__INTEL_COMPILER) && ((__INTEL_COMPILER-0) > 0)
   2.624 +#  define ACC_CC_INTELC         __INTEL_COMPILER
   2.625 +#  define ACC_INFO_CC           "Intel C"
   2.626 +#  define ACC_INFO_CCVER        ACC_PP_MACRO_EXPAND(__INTEL_COMPILER)
   2.627 +#  if defined(_MSC_VER) && ((_MSC_VER-0) > 0)
   2.628 +#    define ACC_CC_INTELC_MSC   _MSC_VER
   2.629 +#  elif defined(__GNUC__) && defined(__GNUC_MINOR__) && defined(__VERSION__)
   2.630 +#    define ACC_CC_INTELC_GNUC   (__GNUC__ * 0x10000L + (__GNUC_MINOR__-0) * 0x100 + (__GNUC_PATCHLEVEL__-0))
   2.631 +#  endif
   2.632 +#elif defined(__POCC__) && defined(_WIN32)
   2.633 +#  define ACC_CC_PELLESC        1
   2.634 +#  define ACC_INFO_CC           "Pelles C"
   2.635 +#  define ACC_INFO_CCVER        ACC_PP_MACRO_EXPAND(__POCC__)
   2.636 +#elif defined(__ARMCC_VERSION) && defined(__GNUC__) && defined(__GNUC_MINOR__) && defined(__VERSION__)
   2.637 +#  if defined(__GNUC_PATCHLEVEL__)
   2.638 +#    define ACC_CC_ARMCC_GNUC   (__GNUC__ * 0x10000L + (__GNUC_MINOR__-0) * 0x100 + (__GNUC_PATCHLEVEL__-0))
   2.639 +#  else
   2.640 +#    define ACC_CC_ARMCC_GNUC   (__GNUC__ * 0x10000L + (__GNUC_MINOR__-0) * 0x100)
   2.641 +#  endif
   2.642 +#  define ACC_CC_ARMCC          __ARMCC_VERSION
   2.643 +#  define ACC_INFO_CC           "ARM C Compiler"
   2.644 +#  define ACC_INFO_CCVER        __VERSION__
   2.645 +#elif defined(__clang__) && defined(__llvm__) && defined(__VERSION__)
   2.646 +#  if defined(__clang_major__) && defined(__clang_minor__) && defined(__clang_patchlevel__)
   2.647 +#    define ACC_CC_CLANG        (__clang_major__ * 0x10000L + (__clang_minor__-0) * 0x100 + (__clang_patchlevel__-0))
   2.648 +#  else
   2.649 +#    define ACC_CC_CLANG        0x010000L
   2.650 +#  endif
   2.651 +#  if defined(_MSC_VER) && ((_MSC_VER-0) > 0)
   2.652 +#    define ACC_CC_CLANG_MSC    _MSC_VER
   2.653 +#  elif defined(__GNUC__) && defined(__GNUC_MINOR__) && defined(__VERSION__)
   2.654 +#    define ACC_CC_CLANG_GNUC   (__GNUC__ * 0x10000L + (__GNUC_MINOR__-0) * 0x100 + (__GNUC_PATCHLEVEL__-0))
   2.655 +#  endif
   2.656 +#  define ACC_INFO_CC           "clang"
   2.657 +#  if defined(__clang_version__)
   2.658 +#    define ACC_INFO_CCVER      __clang_version__
   2.659 +#  else
   2.660 +#    define ACC_INFO_CCVER      __VERSION__
   2.661 +#  endif
   2.662 +#elif defined(__llvm__) && defined(__GNUC__) && defined(__GNUC_MINOR__) && defined(__VERSION__)
   2.663 +#  if defined(__GNUC_PATCHLEVEL__)
   2.664 +#    define ACC_CC_LLVM_GNUC    (__GNUC__ * 0x10000L + (__GNUC_MINOR__-0) * 0x100 + (__GNUC_PATCHLEVEL__-0))
   2.665 +#  else
   2.666 +#    define ACC_CC_LLVM_GNUC    (__GNUC__ * 0x10000L + (__GNUC_MINOR__-0) * 0x100)
   2.667 +#  endif
   2.668 +#  define ACC_CC_LLVM           ACC_CC_LLVM_GNUC
   2.669 +#  define ACC_INFO_CC           "llvm-gcc"
   2.670 +#  define ACC_INFO_CCVER        __VERSION__
   2.671 +#elif defined(__ACK__) && defined(_ACK)
   2.672 +#  define ACC_CC_ACK            1
   2.673 +#  define ACC_INFO_CC           "Amsterdam Compiler Kit C"
   2.674 +#  define ACC_INFO_CCVER        "unknown"
   2.675 +#elif defined(__ARMCC_VERSION) && !defined(__GNUC__)
   2.676 +#  define ACC_CC_ARMCC          __ARMCC_VERSION
   2.677 +#  define ACC_CC_ARMCC_ARMCC    __ARMCC_VERSION
   2.678 +#  define ACC_INFO_CC           "ARM C Compiler"
   2.679 +#  define ACC_INFO_CCVER        ACC_PP_MACRO_EXPAND(__ARMCC_VERSION)
   2.680 +#elif defined(__AZTEC_C__)
   2.681 +#  define ACC_CC_AZTECC         1
   2.682 +#  define ACC_INFO_CC           "Aztec C"
   2.683 +#  define ACC_INFO_CCVER        ACC_PP_MACRO_EXPAND(__AZTEC_C__)
   2.684 +#elif defined(__CODEGEARC__)
   2.685 +#  define ACC_CC_CODEGEARC      1
   2.686 +#  define ACC_INFO_CC           "CodeGear C"
   2.687 +#  define ACC_INFO_CCVER        ACC_PP_MACRO_EXPAND(__CODEGEARC__)
   2.688 +#elif defined(__BORLANDC__)
   2.689 +#  define ACC_CC_BORLANDC       1
   2.690 +#  define ACC_INFO_CC           "Borland C"
   2.691 +#  define ACC_INFO_CCVER        ACC_PP_MACRO_EXPAND(__BORLANDC__)
   2.692 +#elif defined(_CRAYC) && defined(_RELEASE)
   2.693 +#  define ACC_CC_CRAYC          1
   2.694 +#  define ACC_INFO_CC           "Cray C"
   2.695 +#  define ACC_INFO_CCVER        ACC_PP_MACRO_EXPAND(_RELEASE)
   2.696 +#elif defined(__DMC__) && defined(__SC__)
   2.697 +#  define ACC_CC_DMC            1
   2.698 +#  define ACC_INFO_CC           "Digital Mars C"
   2.699 +#  define ACC_INFO_CCVER        ACC_PP_MACRO_EXPAND(__DMC__)
   2.700 +#elif defined(__DECC)
   2.701 +#  define ACC_CC_DECC           1
   2.702 +#  define ACC_INFO_CC           "DEC C"
   2.703 +#  define ACC_INFO_CCVER        ACC_PP_MACRO_EXPAND(__DECC)
   2.704 +#elif (defined(__ghs) || defined(__ghs__)) && defined(__GHS_VERSION_NUMBER) && ((__GHS_VERSION_NUMBER-0) > 0)
   2.705 +#  define ACC_CC_GHS            1
   2.706 +#  define ACC_INFO_CC           "Green Hills C"
   2.707 +#  define ACC_INFO_CCVER        ACC_PP_MACRO_EXPAND(__GHS_VERSION_NUMBER)
   2.708 +#  if defined(_MSC_VER) && ((_MSC_VER-0) > 0)
   2.709 +#    define ACC_CC_GHS_MSC      _MSC_VER
   2.710 +#  elif defined(__GNUC__) && defined(__GNUC_MINOR__) && defined(__VERSION__)
   2.711 +#    define ACC_CC_GHS_GNUC     (__GNUC__ * 0x10000L + (__GNUC_MINOR__-0) * 0x100 + (__GNUC_PATCHLEVEL__-0))
   2.712 +#  endif
   2.713 +#elif defined(__HIGHC__)
   2.714 +#  define ACC_CC_HIGHC          1
   2.715 +#  define ACC_INFO_CC           "MetaWare High C"
   2.716 +#  define ACC_INFO_CCVER        "unknown"
   2.717 +#elif defined(__HP_aCC) && ((__HP_aCC-0) > 0)
   2.718 +#  define ACC_CC_HPACC          __HP_aCC
   2.719 +#  define ACC_INFO_CC           "HP aCC"
   2.720 +#  define ACC_INFO_CCVER        ACC_PP_MACRO_EXPAND(__HP_aCC)
   2.721 +#elif defined(__IAR_SYSTEMS_ICC__)
   2.722 +#  define ACC_CC_IARC           1
   2.723 +#  define ACC_INFO_CC           "IAR C"
   2.724 +#  if defined(__VER__)
   2.725 +#    define ACC_INFO_CCVER      ACC_PP_MACRO_EXPAND(__VER__)
   2.726 +#  else
   2.727 +#    define ACC_INFO_CCVER      "unknown"
   2.728 +#  endif
   2.729 +#elif defined(__IBMC__) && ((__IBMC__-0) > 0)
   2.730 +#  define ACC_CC_IBMC           __IBMC__
   2.731 +#  define ACC_INFO_CC           "IBM C"
   2.732 +#  define ACC_INFO_CCVER        ACC_PP_MACRO_EXPAND(__IBMC__)
   2.733 +#elif defined(__IBMCPP__) && ((__IBMCPP__-0) > 0)
   2.734 +#  define ACC_CC_IBMC           __IBMCPP__
   2.735 +#  define ACC_INFO_CC           "IBM C"
   2.736 +#  define ACC_INFO_CCVER        ACC_PP_MACRO_EXPAND(__IBMCPP__)
   2.737 +#elif defined(__KEIL__) && defined(__C166__)
   2.738 +#  define ACC_CC_KEILC          1
   2.739 +#  define ACC_INFO_CC           "Keil C"
   2.740 +#  define ACC_INFO_CCVER        ACC_PP_MACRO_EXPAND(__C166__)
   2.741 +#elif defined(__LCC__) && defined(_WIN32) && defined(__LCCOPTIMLEVEL)
   2.742 +#  define ACC_CC_LCCWIN32       1
   2.743 +#  define ACC_INFO_CC           "lcc-win32"
   2.744 +#  define ACC_INFO_CCVER        "unknown"
   2.745 +#elif defined(__LCC__)
   2.746 +#  define ACC_CC_LCC            1
   2.747 +#  define ACC_INFO_CC           "lcc"
   2.748 +#  if defined(__LCC_VERSION__)
   2.749 +#    define ACC_INFO_CCVER      ACC_PP_MACRO_EXPAND(__LCC_VERSION__)
   2.750 +#  else
   2.751 +#    define ACC_INFO_CCVER      "unknown"
   2.752 +#  endif
   2.753 +#elif defined(__MWERKS__) && ((__MWERKS__-0) > 0)
   2.754 +#  define ACC_CC_MWERKS         __MWERKS__
   2.755 +#  define ACC_INFO_CC           "Metrowerks C"
   2.756 +#  define ACC_INFO_CCVER        ACC_PP_MACRO_EXPAND(__MWERKS__)
   2.757 +#elif (defined(__NDPC__) || defined(__NDPX__)) && defined(__i386)
   2.758 +#  define ACC_CC_NDPC           1
   2.759 +#  define ACC_INFO_CC           "Microway NDP C"
   2.760 +#  define ACC_INFO_CCVER        "unknown"
   2.761 +#elif defined(__PACIFIC__)
   2.762 +#  define ACC_CC_PACIFICC       1
   2.763 +#  define ACC_INFO_CC           "Pacific C"
   2.764 +#  define ACC_INFO_CCVER        ACC_PP_MACRO_EXPAND(__PACIFIC__)
   2.765 +#elif defined(__PGI) && defined(__PGIC__) && defined(__PGIC_MINOR__)
   2.766 +#  if defined(__PGIC_PATCHLEVEL__)
   2.767 +#    define ACC_CC_PGI          (__PGIC__ * 0x10000L + (__PGIC_MINOR__-0) * 0x100 + (__PGIC_PATCHLEVEL__-0))
   2.768 +#    define ACC_INFO_CCVER      ACC_PP_MACRO_EXPAND(__PGIC__) "." ACC_PP_MACRO_EXPAND(__PGIC_MINOR__) "." ACC_PP_MACRO_EXPAND(__PGIC_PATCHLEVEL__)
   2.769 +#  else
   2.770 +#    define ACC_CC_PGI          (__PGIC__ * 0x10000L + (__PGIC_MINOR__-0) * 0x100)
   2.771 +#    define ACC_INFO_CCVER      ACC_PP_MACRO_EXPAND(__PGIC__) "." ACC_PP_MACRO_EXPAND(__PGIC_MINOR__) ".0"
   2.772 +#  endif
   2.773 +#  define ACC_INFO_CC           "Portland Group PGI C"
   2.774 +#elif defined(__PGI) && (defined(__linux__) || defined(__WIN32__))
   2.775 +#  define ACC_CC_PGI            1
   2.776 +#  define ACC_INFO_CC           "Portland Group PGI C"
   2.777 +#  define ACC_INFO_CCVER        "unknown"
   2.778 +#elif defined(__PUREC__) && defined(__TOS__)
   2.779 +#  define ACC_CC_PUREC          1
   2.780 +#  define ACC_INFO_CC           "Pure C"
   2.781 +#  define ACC_INFO_CCVER        ACC_PP_MACRO_EXPAND(__PUREC__)
   2.782 +#elif defined(__SC__) && defined(__ZTC__)
   2.783 +#  define ACC_CC_SYMANTECC      1
   2.784 +#  define ACC_INFO_CC           "Symantec C"
   2.785 +#  define ACC_INFO_CCVER        ACC_PP_MACRO_EXPAND(__SC__)
   2.786 +#elif defined(__SUNPRO_C)
   2.787 +#  define ACC_INFO_CC           "SunPro C"
   2.788 +#  if ((__SUNPRO_C-0) > 0)
   2.789 +#    define ACC_CC_SUNPROC      __SUNPRO_C
   2.790 +#    define ACC_INFO_CCVER      ACC_PP_MACRO_EXPAND(__SUNPRO_C)
   2.791 +#  else
   2.792 +#    define ACC_CC_SUNPROC      1
   2.793 +#    define ACC_INFO_CCVER      "unknown"
   2.794 +#  endif
   2.795 +#elif defined(__SUNPRO_CC)
   2.796 +#  define ACC_INFO_CC           "SunPro C"
   2.797 +#  if ((__SUNPRO_CC-0) > 0)
   2.798 +#    define ACC_CC_SUNPROC      __SUNPRO_CC
   2.799 +#    define ACC_INFO_CCVER      ACC_PP_MACRO_EXPAND(__SUNPRO_CC)
   2.800 +#  else
   2.801 +#    define ACC_CC_SUNPROC      1
   2.802 +#    define ACC_INFO_CCVER      "unknown"
   2.803 +#  endif
   2.804 +#elif defined(__TINYC__)
   2.805 +#  define ACC_CC_TINYC          1
   2.806 +#  define ACC_INFO_CC           "Tiny C"
   2.807 +#  define ACC_INFO_CCVER        ACC_PP_MACRO_EXPAND(__TINYC__)
   2.808 +#elif defined(__TSC__)
   2.809 +#  define ACC_CC_TOPSPEEDC      1
   2.810 +#  define ACC_INFO_CC           "TopSpeed C"
   2.811 +#  define ACC_INFO_CCVER        ACC_PP_MACRO_EXPAND(__TSC__)
   2.812 +#elif defined(__WATCOMC__)
   2.813 +#  define ACC_CC_WATCOMC        1
   2.814 +#  define ACC_INFO_CC           "Watcom C"
   2.815 +#  define ACC_INFO_CCVER        ACC_PP_MACRO_EXPAND(__WATCOMC__)
   2.816 +#elif defined(__TURBOC__)
   2.817 +#  define ACC_CC_TURBOC         1
   2.818 +#  define ACC_INFO_CC           "Turbo C"
   2.819 +#  define ACC_INFO_CCVER        ACC_PP_MACRO_EXPAND(__TURBOC__)
   2.820 +#elif defined(__ZTC__)
   2.821 +#  define ACC_CC_ZORTECHC       1
   2.822 +#  define ACC_INFO_CC           "Zortech C"
   2.823 +#  if ((__ZTC__-0) == 0x310)
   2.824 +#    define ACC_INFO_CCVER      "0x310"
   2.825 +#  else
   2.826 +#    define ACC_INFO_CCVER      ACC_PP_MACRO_EXPAND(__ZTC__)
   2.827 +#  endif
   2.828 +#elif defined(__GNUC__) && defined(__VERSION__)
   2.829 +#  if defined(__GNUC_MINOR__) && defined(__GNUC_PATCHLEVEL__)
   2.830 +#    define ACC_CC_GNUC         (__GNUC__ * 0x10000L + (__GNUC_MINOR__-0) * 0x100 + (__GNUC_PATCHLEVEL__-0))
   2.831 +#  elif defined(__GNUC_MINOR__)
   2.832 +#    define ACC_CC_GNUC         (__GNUC__ * 0x10000L + (__GNUC_MINOR__-0) * 0x100)
   2.833 +#  else
   2.834 +#    define ACC_CC_GNUC         (__GNUC__ * 0x10000L)
   2.835 +#  endif
   2.836 +#  define ACC_INFO_CC           "gcc"
   2.837 +#  define ACC_INFO_CCVER        __VERSION__
   2.838 +#elif defined(_MSC_VER) && ((_MSC_VER-0) > 0)
   2.839 +#  define ACC_CC_MSC            _MSC_VER
   2.840 +#  define ACC_INFO_CC           "Microsoft C"
   2.841 +#  if defined(_MSC_FULL_VER)
   2.842 +#    define ACC_INFO_CCVER      ACC_PP_MACRO_EXPAND(_MSC_VER) "." ACC_PP_MACRO_EXPAND(_MSC_FULL_VER)
   2.843 +#  else
   2.844 +#    define ACC_INFO_CCVER      ACC_PP_MACRO_EXPAND(_MSC_VER)
   2.845 +#  endif
   2.846 +#else
   2.847 +#  define ACC_CC_UNKNOWN        1
   2.848 +#  define ACC_INFO_CC           "unknown"
   2.849 +#  define ACC_INFO_CCVER        "unknown"
   2.850 +#endif
   2.851 +#if (ACC_CC_GNUC) && defined(__OPEN64__)
   2.852 +#  if defined(__OPENCC__) && defined(__OPENCC_MINOR__) && defined(__OPENCC_PATCHLEVEL__)
   2.853 +#    define ACC_CC_OPEN64       (__OPENCC__ * 0x10000L + (__OPENCC_MINOR__-0) * 0x100 + (__OPENCC_PATCHLEVEL__-0))
   2.854 +#    define ACC_CC_OPEN64_GNUC  ACC_CC_GNUC
   2.855 +#  endif
   2.856 +#endif
   2.857 +#if (ACC_CC_GNUC) && defined(__PCC__)
   2.858 +#  if defined(__PCC__) && defined(__PCC_MINOR__) && defined(__PCC_MINORMINOR__)
   2.859 +#    define ACC_CC_PCC          (__PCC__ * 0x10000L + (__PCC_MINOR__-0) * 0x100 + (__PCC_MINORMINOR__-0))
   2.860 +#    define ACC_CC_PCC_GNUC     ACC_CC_GNUC
   2.861 +#  endif
   2.862 +#endif
   2.863 +#if 0 && (ACC_CC_MSC && (_MSC_VER >= 1200)) && !defined(_MSC_FULL_VER)
   2.864 +#  error "ACC_CC_MSC: _MSC_FULL_VER is not defined"
   2.865 +#endif
   2.866 +#if !defined(__ACC_ARCH_OVERRIDE) && !(ACC_ARCH_GENERIC) && defined(_CRAY)
   2.867 +#  if (UINT_MAX > ACC_0xffffffffL) && defined(_CRAY)
   2.868 +#    if defined(_CRAYMPP) || defined(_CRAYT3D) || defined(_CRAYT3E)
   2.869 +#      define ACC_ARCH_CRAY_MPP     1
   2.870 +#    elif defined(_CRAY1)
   2.871 +#      define ACC_ARCH_CRAY_PVP     1
   2.872 +#    endif
   2.873 +#  endif
   2.874 +#endif
   2.875 +#if !defined(__ACC_ARCH_OVERRIDE)
   2.876 +#if (ACC_ARCH_GENERIC)
   2.877 +#  define ACC_INFO_ARCH             "generic"
   2.878 +#elif (ACC_OS_DOS16 || ACC_OS_OS216 || ACC_OS_WIN16)
   2.879 +#  define ACC_ARCH_I086             1
   2.880 +#  define ACC_INFO_ARCH             "i086"
   2.881 +#elif defined(__aarch64__) || defined(_M_ARM64)
   2.882 +#  define ACC_ARCH_ARM64            1
   2.883 +#  define ACC_INFO_ARCH             "arm64"
   2.884 +#elif defined(__alpha__) || defined(__alpha) || defined(_M_ALPHA)
   2.885 +#  define ACC_ARCH_ALPHA            1
   2.886 +#  define ACC_INFO_ARCH             "alpha"
   2.887 +#elif (ACC_ARCH_CRAY_MPP) && (defined(_CRAYT3D) || defined(_CRAYT3E))
   2.888 +#  define ACC_ARCH_ALPHA            1
   2.889 +#  define ACC_INFO_ARCH             "alpha"
   2.890 +#elif defined(__amd64__) || defined(__x86_64__) || defined(_M_AMD64)
   2.891 +#  define ACC_ARCH_AMD64            1
   2.892 +#  define ACC_INFO_ARCH             "amd64"
   2.893 +#elif defined(__arm__) || defined(_M_ARM)
   2.894 +#  define ACC_ARCH_ARM              1
   2.895 +#  define ACC_INFO_ARCH             "arm"
   2.896 +#elif defined(__IAR_SYSTEMS_ICC__) && defined(__ICCARM__)
   2.897 +#  define ACC_ARCH_ARM              1
   2.898 +#  define ACC_INFO_ARCH             "arm"
   2.899 +#elif (UINT_MAX <= ACC_0xffffL) && defined(__AVR__)
   2.900 +#  define ACC_ARCH_AVR              1
   2.901 +#  define ACC_INFO_ARCH             "avr"
   2.902 +#elif defined(__avr32__) || defined(__AVR32__)
   2.903 +#  define ACC_ARCH_AVR32            1
   2.904 +#  define ACC_INFO_ARCH             "avr32"
   2.905 +#elif defined(__bfin__)
   2.906 +#  define ACC_ARCH_BLACKFIN         1
   2.907 +#  define ACC_INFO_ARCH             "blackfin"
   2.908 +#elif (UINT_MAX == ACC_0xffffL) && defined(__C166__)
   2.909 +#  define ACC_ARCH_C166             1
   2.910 +#  define ACC_INFO_ARCH             "c166"
   2.911 +#elif defined(__cris__)
   2.912 +#  define ACC_ARCH_CRIS             1
   2.913 +#  define ACC_INFO_ARCH             "cris"
   2.914 +#elif defined(__IAR_SYSTEMS_ICC__) && defined(__ICCEZ80__)
   2.915 +#  define ACC_ARCH_EZ80             1
   2.916 +#  define ACC_INFO_ARCH             "ez80"
   2.917 +#elif defined(__H8300__) || defined(__H8300H__) || defined(__H8300S__) || defined(__H8300SX__)
   2.918 +#  define ACC_ARCH_H8300            1
   2.919 +#  define ACC_INFO_ARCH             "h8300"
   2.920 +#elif defined(__hppa__) || defined(__hppa)
   2.921 +#  define ACC_ARCH_HPPA             1
   2.922 +#  define ACC_INFO_ARCH             "hppa"
   2.923 +#elif defined(__386__) || defined(__i386__) || defined(__i386) || defined(_M_IX86) || defined(_M_I386)
   2.924 +#  define ACC_ARCH_I386             1
   2.925 +#  define ACC_ARCH_IA32             1
   2.926 +#  define ACC_INFO_ARCH             "i386"
   2.927 +#elif (ACC_CC_ZORTECHC && defined(__I86__))
   2.928 +#  define ACC_ARCH_I386             1
   2.929 +#  define ACC_ARCH_IA32             1
   2.930 +#  define ACC_INFO_ARCH             "i386"
   2.931 +#elif (ACC_OS_DOS32 && ACC_CC_HIGHC) && defined(_I386)
   2.932 +#  define ACC_ARCH_I386             1
   2.933 +#  define ACC_ARCH_IA32             1
   2.934 +#  define ACC_INFO_ARCH             "i386"
   2.935 +#elif defined(__ia64__) || defined(__ia64) || defined(_M_IA64)
   2.936 +#  define ACC_ARCH_IA64             1
   2.937 +#  define ACC_INFO_ARCH             "ia64"
   2.938 +#elif (UINT_MAX == ACC_0xffffL) && defined(__m32c__)
   2.939 +#  define ACC_ARCH_M16C             1
   2.940 +#  define ACC_INFO_ARCH             "m16c"
   2.941 +#elif defined(__IAR_SYSTEMS_ICC__) && defined(__ICCM16C__)
   2.942 +#  define ACC_ARCH_M16C             1
   2.943 +#  define ACC_INFO_ARCH             "m16c"
   2.944 +#elif defined(__m32r__)
   2.945 +#  define ACC_ARCH_M32R             1
   2.946 +#  define ACC_INFO_ARCH             "m32r"
   2.947 +#elif (ACC_OS_TOS) || defined(__m68k__) || defined(__m68000__) || defined(__mc68000__) || defined(__mc68020__) || defined(_M_M68K)
   2.948 +#  define ACC_ARCH_M68K             1
   2.949 +#  define ACC_INFO_ARCH             "m68k"
   2.950 +#elif (UINT_MAX == ACC_0xffffL) && defined(__C251__)
   2.951 +#  define ACC_ARCH_MCS251           1
   2.952 +#  define ACC_INFO_ARCH             "mcs251"
   2.953 +#elif (UINT_MAX == ACC_0xffffL) && defined(__C51__)
   2.954 +#  define ACC_ARCH_MCS51            1
   2.955 +#  define ACC_INFO_ARCH             "mcs51"
   2.956 +#elif defined(__IAR_SYSTEMS_ICC__) && defined(__ICC8051__)
   2.957 +#  define ACC_ARCH_MCS51            1
   2.958 +#  define ACC_INFO_ARCH             "mcs51"
   2.959 +#elif defined(__mips__) || defined(__mips) || defined(_MIPS_ARCH) || defined(_M_MRX000)
   2.960 +#  define ACC_ARCH_MIPS             1
   2.961 +#  define ACC_INFO_ARCH             "mips"
   2.962 +#elif (UINT_MAX == ACC_0xffffL) && defined(__MSP430__)
   2.963 +#  define ACC_ARCH_MSP430           1
   2.964 +#  define ACC_INFO_ARCH             "msp430"
   2.965 +#elif defined(__IAR_SYSTEMS_ICC__) && defined(__ICC430__)
   2.966 +#  define ACC_ARCH_MSP430           1
   2.967 +#  define ACC_INFO_ARCH             "msp430"
   2.968 +#elif defined(__powerpc__) || defined(__powerpc) || defined(__ppc__) || defined(__PPC__) || defined(_M_PPC) || defined(_ARCH_PPC) || defined(_ARCH_PWR)
   2.969 +#  define ACC_ARCH_POWERPC          1
   2.970 +#  define ACC_INFO_ARCH             "powerpc"
   2.971 +#elif defined(__powerpc64__) || defined(__powerpc64) || defined(__ppc64__) || defined(__PPC64__)
   2.972 +#  define ACC_ARCH_POWERPC          1
   2.973 +#  define ACC_INFO_ARCH             "powerpc"
   2.974 +#elif defined(__powerpc64le__) || defined(__powerpc64le) || defined(__ppc64le__) || defined(__PPC64LE__)
   2.975 +#  define ACC_ARCH_POWERPC          1
   2.976 +#  define ACC_INFO_ARCH             "powerpc"
   2.977 +#elif defined(__s390__) || defined(__s390) || defined(__s390x__) || defined(__s390x)
   2.978 +#  define ACC_ARCH_S390             1
   2.979 +#  define ACC_INFO_ARCH             "s390"
   2.980 +#elif defined(__sh__) || defined(_M_SH)
   2.981 +#  define ACC_ARCH_SH               1
   2.982 +#  define ACC_INFO_ARCH             "sh"
   2.983 +#elif defined(__sparc__) || defined(__sparc) || defined(__sparcv8)
   2.984 +#  define ACC_ARCH_SPARC            1
   2.985 +#  define ACC_INFO_ARCH             "sparc"
   2.986 +#elif defined(__SPU__)
   2.987 +#  define ACC_ARCH_SPU              1
   2.988 +#  define ACC_INFO_ARCH             "spu"
   2.989 +#elif (UINT_MAX == ACC_0xffffL) && defined(__z80)
   2.990 +#  define ACC_ARCH_Z80              1
   2.991 +#  define ACC_INFO_ARCH             "z80"
   2.992 +#elif (ACC_ARCH_CRAY_PVP)
   2.993 +#  if defined(_CRAYSV1)
   2.994 +#    define ACC_ARCH_CRAY_SV1       1
   2.995 +#    define ACC_INFO_ARCH           "cray_sv1"
   2.996 +#  elif (_ADDR64)
   2.997 +#    define ACC_ARCH_CRAY_T90       1
   2.998 +#    define ACC_INFO_ARCH           "cray_t90"
   2.999 +#  elif (_ADDR32)
  2.1000 +#    define ACC_ARCH_CRAY_YMP       1
  2.1001 +#    define ACC_INFO_ARCH           "cray_ymp"
  2.1002 +#  else
  2.1003 +#    define ACC_ARCH_CRAY_XMP       1
  2.1004 +#    define ACC_INFO_ARCH           "cray_xmp"
  2.1005 +#  endif
  2.1006 +#else
  2.1007 +#  define ACC_ARCH_UNKNOWN          1
  2.1008 +#  define ACC_INFO_ARCH             "unknown"
  2.1009 +#endif
  2.1010 +#endif
  2.1011 +#if !defined(ACC_ARCH_ARM_THUMB2)
  2.1012 +#if (ACC_ARCH_ARM)
  2.1013 +#  if defined(__thumb__) || defined(__thumb) || defined(_M_THUMB)
  2.1014 +#    if defined(__thumb2__)
  2.1015 +#      define ACC_ARCH_ARM_THUMB2   1
  2.1016 +#    elif 1 && defined(__TARGET_ARCH_THUMB) && ((__TARGET_ARCH_THUMB)+0 >= 4)
  2.1017 +#      define ACC_ARCH_ARM_THUMB2   1
  2.1018 +#    endif
  2.1019 +#  endif
  2.1020 +#endif
  2.1021 +#endif
  2.1022 +#if (ACC_ARCH_ARM_THUMB2)
  2.1023 +#  undef  ACC_INFO_ARCH
  2.1024 +#  define ACC_INFO_ARCH             "arm_thumb2"
  2.1025 +#endif
  2.1026 +#if 1 && (ACC_ARCH_UNKNOWN) && (ACC_OS_DOS32 || ACC_OS_OS2)
  2.1027 +#  error "FIXME - missing define for CPU architecture"
  2.1028 +#endif
  2.1029 +#if 1 && (ACC_ARCH_UNKNOWN) && (ACC_OS_WIN32)
  2.1030 +#  error "FIXME - missing ACC_OS_WIN32 define for CPU architecture"
  2.1031 +#endif
  2.1032 +#if 1 && (ACC_ARCH_UNKNOWN) && (ACC_OS_WIN64)
  2.1033 +#  error "FIXME - missing ACC_OS_WIN64 define for CPU architecture"
  2.1034 +#endif
  2.1035 +#if (ACC_OS_OS216 || ACC_OS_WIN16)
  2.1036 +#  define ACC_ARCH_I086PM           1
  2.1037 +#elif 1 && (ACC_OS_DOS16 && defined(BLX286))
  2.1038 +#  define ACC_ARCH_I086PM           1
  2.1039 +#elif 1 && (ACC_OS_DOS16 && defined(DOSX286))
  2.1040 +#  define ACC_ARCH_I086PM           1
  2.1041 +#elif 1 && (ACC_OS_DOS16 && ACC_CC_BORLANDC && defined(__DPMI16__))
  2.1042 +#  define ACC_ARCH_I086PM           1
  2.1043 +#endif
  2.1044 +#if (ACC_ARCH_AMD64 && !ACC_ARCH_X64)
  2.1045 +#  define ACC_ARCH_X64              1
  2.1046 +#elif (!ACC_ARCH_AMD64 && ACC_ARCH_X64) && defined(__ACC_ARCH_OVERRIDE)
  2.1047 +#  define ACC_ARCH_AMD64            1
  2.1048 +#endif
  2.1049 +#if (ACC_ARCH_ARM64 && !ACC_ARCH_AARCH64)
  2.1050 +#  define ACC_ARCH_AARCH64          1
  2.1051 +#elif (!ACC_ARCH_ARM64 && ACC_ARCH_AARCH64) && defined(__ACC_ARCH_OVERRIDE)
  2.1052 +#  define ACC_ARCH_ARM64            1
  2.1053 +#endif
  2.1054 +#if (ACC_ARCH_I386 && !ACC_ARCH_X86)
  2.1055 +#  define ACC_ARCH_X86              1
  2.1056 +#elif (!ACC_ARCH_I386 && ACC_ARCH_X86) && defined(__ACC_ARCH_OVERRIDE)
  2.1057 +#  define ACC_ARCH_I386            1
  2.1058 +#endif
  2.1059 +#if (ACC_ARCH_AMD64 && !ACC_ARCH_X64) || (!ACC_ARCH_AMD64 && ACC_ARCH_X64)
  2.1060 +#  error "unexpected configuration - check your compiler defines"
  2.1061 +#endif
  2.1062 +#if (ACC_ARCH_ARM64 && !ACC_ARCH_AARCH64) || (!ACC_ARCH_ARM64 && ACC_ARCH_AARCH64)
  2.1063 +#  error "unexpected configuration - check your compiler defines"
  2.1064 +#endif
  2.1065 +#if (ACC_ARCH_I386 && !ACC_ARCH_X86) || (!ACC_ARCH_I386 && ACC_ARCH_X86)
  2.1066 +#  error "unexpected configuration - check your compiler defines"
  2.1067 +#endif
  2.1068 +#if (ACC_ARCH_ARM_THUMB1 && !ACC_ARCH_ARM)
  2.1069 +#  error "unexpected configuration - check your compiler defines"
  2.1070 +#endif
  2.1071 +#if (ACC_ARCH_ARM_THUMB2 && !ACC_ARCH_ARM)
  2.1072 +#  error "unexpected configuration - check your compiler defines"
  2.1073 +#endif
  2.1074 +#if (ACC_ARCH_ARM_THUMB1 && ACC_ARCH_ARM_THUMB2)
  2.1075 +#  error "unexpected configuration - check your compiler defines"
  2.1076 +#endif
  2.1077 +#if (ACC_ARCH_I086PM && !ACC_ARCH_I086)
  2.1078 +#  error "unexpected configuration - check your compiler defines"
  2.1079 +#endif
  2.1080 +#if (ACC_ARCH_I086)
  2.1081 +#  if (UINT_MAX != ACC_0xffffL)
  2.1082 +#    error "unexpected configuration - check your compiler defines"
  2.1083 +#  endif
  2.1084 +#  if (ULONG_MAX != ACC_0xffffffffL)
  2.1085 +#    error "unexpected configuration - check your compiler defines"
  2.1086 +#  endif
  2.1087 +#endif
  2.1088 +#if (ACC_ARCH_I386)
  2.1089 +#  if (UINT_MAX != ACC_0xffffL) && defined(__i386_int16__)
  2.1090 +#    error "unexpected configuration - check your compiler defines"
  2.1091 +#  endif
  2.1092 +#  if (UINT_MAX != ACC_0xffffffffL) && !defined(__i386_int16__)
  2.1093 +#    error "unexpected configuration - check your compiler defines"
  2.1094 +#  endif
  2.1095 +#  if (ULONG_MAX != ACC_0xffffffffL)
  2.1096 +#    error "unexpected configuration - check your compiler defines"
  2.1097 +#  endif
  2.1098 +#endif
  2.1099 +#if (ACC_ARCH_AMD64 || ACC_ARCH_I386)
  2.1100 +#  if !defined(ACC_TARGET_FEATURE_SSE2)
  2.1101 +#    if defined(__SSE2__)
  2.1102 +#      define ACC_TARGET_FEATURE_SSE2       1
  2.1103 +#    elif defined(_MSC_VER) && (defined(_M_IX86_FP) && ((_M_IX86_FP)+0 >= 2))
  2.1104 +#      define ACC_TARGET_FEATURE_SSE2       1
  2.1105 +#    elif (ACC_CC_INTELC_MSC || ACC_CC_MSC) && defined(_M_AMD64)
  2.1106 +#      define ACC_TARGET_FEATURE_SSE2       1
  2.1107 +#    endif
  2.1108 +#  endif
  2.1109 +#  if !defined(ACC_TARGET_FEATURE_SSSE3)
  2.1110 +#  if (ACC_TARGET_FEATURE_SSE2)
  2.1111 +#    if defined(__SSSE3__)
  2.1112 +#      define ACC_TARGET_FEATURE_SSSE3      1
  2.1113 +#    elif defined(_MSC_VER) && defined(__AVX__)
  2.1114 +#      define ACC_TARGET_FEATURE_SSSE3      1
  2.1115 +#    endif
  2.1116 +#  endif
  2.1117 +#  endif
  2.1118 +#  if !defined(ACC_TARGET_FEATURE_SSE4_2)
  2.1119 +#  if (ACC_TARGET_FEATURE_SSSE3)
  2.1120 +#    if defined(__SSE4_2__)
  2.1121 +#      define ACC_TARGET_FEATURE_SSE4_2     1
  2.1122 +#    endif
  2.1123 +#  endif
  2.1124 +#  endif
  2.1125 +#  if !defined(ACC_TARGET_FEATURE_AVX)
  2.1126 +#  if (ACC_TARGET_FEATURE_SSSE3)
  2.1127 +#    if defined(__AVX__)
  2.1128 +#      define ACC_TARGET_FEATURE_AVX        1
  2.1129 +#    endif
  2.1130 +#  endif
  2.1131 +#  endif
  2.1132 +#  if !defined(ACC_TARGET_FEATURE_AVX2)
  2.1133 +#  if (ACC_TARGET_FEATURE_AVX)
  2.1134 +#    if defined(__AVX2__)
  2.1135 +#      define ACC_TARGET_FEATURE_AVX2       1
  2.1136 +#    endif
  2.1137 +#  endif
  2.1138 +#  endif
  2.1139 +#endif
  2.1140 +#if (ACC_TARGET_FEATURE_SSSE3 && !(ACC_TARGET_FEATURE_SSE2))
  2.1141 +#  error "unexpected configuration - check your compiler defines"
  2.1142 +#endif
  2.1143 +#if (ACC_TARGET_FEATURE_SSE4_2 && !(ACC_TARGET_FEATURE_SSSE3))
  2.1144 +#  error "unexpected configuration - check your compiler defines"
  2.1145 +#endif
  2.1146 +#if (ACC_TARGET_FEATURE_AVX && !(ACC_TARGET_FEATURE_SSSE3))
  2.1147 +#  error "unexpected configuration - check your compiler defines"
  2.1148 +#endif
  2.1149 +#if (ACC_TARGET_FEATURE_AVX2 && !(ACC_TARGET_FEATURE_AVX))
  2.1150 +#  error "unexpected configuration - check your compiler defines"
  2.1151 +#endif
  2.1152 +#if (ACC_ARCH_ARM)
  2.1153 +#  if !defined(ACC_TARGET_FEATURE_NEON)
  2.1154 +#    if defined(__ARM_NEON) && ((__ARM_NEON)+0)
  2.1155 +#      define ACC_TARGET_FEATURE_NEON       1
  2.1156 +#    elif 1 && defined(__ARM_NEON__) && ((__ARM_NEON__)+0)
  2.1157 +#      define ACC_TARGET_FEATURE_NEON       1
  2.1158 +#    elif 1 && defined(__TARGET_FEATURE_NEON) && ((__TARGET_FEATURE_NEON)+0)
  2.1159 +#      define ACC_TARGET_FEATURE_NEON       1
  2.1160 +#    endif
  2.1161 +#  endif
  2.1162 +#elif (ACC_ARCH_ARM64)
  2.1163 +#  if !defined(ACC_TARGET_FEATURE_NEON)
  2.1164 +#    if 1
  2.1165 +#      define ACC_TARGET_FEATURE_NEON       1
  2.1166 +#    endif
  2.1167 +#  endif
  2.1168 +#endif
  2.1169 +#if 0
  2.1170 +#elif !defined(__ACC_MM_OVERRIDE)
  2.1171 +#if (ACC_ARCH_I086)
  2.1172 +#if (UINT_MAX != ACC_0xffffL)
  2.1173 +#  error "unexpected configuration - check your compiler defines"
  2.1174 +#endif
  2.1175 +#if defined(__TINY__) || defined(M_I86TM) || defined(_M_I86TM)
  2.1176 +#  define ACC_MM_TINY           1
  2.1177 +#elif defined(__HUGE__) || defined(_HUGE_) || defined(M_I86HM) || defined(_M_I86HM)
  2.1178 +#  define ACC_MM_HUGE           1
  2.1179 +#elif defined(__SMALL__) || defined(M_I86SM) || defined(_M_I86SM) || defined(SMALL_MODEL)
  2.1180 +#  define ACC_MM_SMALL          1
  2.1181 +#elif defined(__MEDIUM__) || defined(M_I86MM) || defined(_M_I86MM)
  2.1182 +#  define ACC_MM_MEDIUM         1
  2.1183 +#elif defined(__COMPACT__) || defined(M_I86CM) || defined(_M_I86CM)
  2.1184 +#  define ACC_MM_COMPACT        1
  2.1185 +#elif defined(__LARGE__) || defined(M_I86LM) || defined(_M_I86LM) || defined(LARGE_MODEL)
  2.1186 +#  define ACC_MM_LARGE          1
  2.1187 +#elif (ACC_CC_AZTECC)
  2.1188 +#  if defined(_LARGE_CODE) && defined(_LARGE_DATA)
  2.1189 +#    define ACC_MM_LARGE        1
  2.1190 +#  elif defined(_LARGE_CODE)
  2.1191 +#    define ACC_MM_MEDIUM       1
  2.1192 +#  elif defined(_LARGE_DATA)
  2.1193 +#    define ACC_MM_COMPACT      1
  2.1194 +#  else
  2.1195 +#    define ACC_MM_SMALL        1
  2.1196 +#  endif
  2.1197 +#elif (ACC_CC_ZORTECHC && defined(__VCM__))
  2.1198 +#  define ACC_MM_LARGE          1
  2.1199 +#else
  2.1200 +#  error "unknown ACC_ARCH_I086 memory model"
  2.1201 +#endif
  2.1202 +#if (ACC_OS_DOS16 || ACC_OS_OS216 || ACC_OS_WIN16)
  2.1203 +#define ACC_HAVE_MM_HUGE_PTR        1
  2.1204 +#define ACC_HAVE_MM_HUGE_ARRAY      1
  2.1205 +#if (ACC_MM_TINY)
  2.1206 +#  undef ACC_HAVE_MM_HUGE_ARRAY
  2.1207 +#endif
  2.1208 +#if (ACC_CC_AZTECC || ACC_CC_PACIFICC || ACC_CC_ZORTECHC)
  2.1209 +#  undef ACC_HAVE_MM_HUGE_PTR
  2.1210 +#  undef ACC_HAVE_MM_HUGE_ARRAY
  2.1211 +#elif (ACC_CC_DMC || ACC_CC_SYMANTECC)
  2.1212 +#  undef ACC_HAVE_MM_HUGE_ARRAY
  2.1213 +#elif (ACC_CC_MSC && defined(_QC))
  2.1214 +#  undef ACC_HAVE_MM_HUGE_ARRAY
  2.1215 +#  if (_MSC_VER < 600)
  2.1216 +#    undef ACC_HAVE_MM_HUGE_PTR
  2.1217 +#  endif
  2.1218 +#elif (ACC_CC_TURBOC && (__TURBOC__ < 0x0295))
  2.1219 +#  undef ACC_HAVE_MM_HUGE_ARRAY
  2.1220 +#endif
  2.1221 +#if (ACC_ARCH_I086PM) && !(ACC_HAVE_MM_HUGE_PTR)
  2.1222 +#  if (ACC_OS_DOS16)
  2.1223 +#    error "unexpected configuration - check your compiler defines"
  2.1224 +#  elif (ACC_CC_ZORTECHC)
  2.1225 +#  else
  2.1226 +#    error "unexpected configuration - check your compiler defines"
  2.1227 +#  endif
  2.1228 +#endif
  2.1229 +#ifdef __cplusplus
  2.1230 +extern "C" {
  2.1231 +#endif
  2.1232 +#if (ACC_CC_BORLANDC && (__BORLANDC__ >= 0x0200))
  2.1233 +   extern void __near __cdecl _AHSHIFT(void);
  2.1234 +#  define ACC_MM_AHSHIFT      ((unsigned) _AHSHIFT)
  2.1235 +#elif (ACC_CC_DMC || ACC_CC_SYMANTECC || ACC_CC_ZORTECHC)
  2.1236 +   extern void __near __cdecl _AHSHIFT(void);
  2.1237 +#  define ACC_MM_AHSHIFT      ((unsigned) _AHSHIFT)
  2.1238 +#elif (ACC_CC_MSC || ACC_CC_TOPSPEEDC)
  2.1239 +   extern void __near __cdecl _AHSHIFT(void);
  2.1240 +#  define ACC_MM_AHSHIFT      ((unsigned) _AHSHIFT)
  2.1241 +#elif (ACC_CC_TURBOC && (__TURBOC__ >= 0x0295))
  2.1242 +   extern void __near __cdecl _AHSHIFT(void);
  2.1243 +#  define ACC_MM_AHSHIFT      ((unsigned) _AHSHIFT)
  2.1244 +#elif ((ACC_CC_AZTECC || ACC_CC_PACIFICC || ACC_CC_TURBOC) && ACC_OS_DOS16)
  2.1245 +#  define ACC_MM_AHSHIFT      12
  2.1246 +#elif (ACC_CC_WATCOMC)
  2.1247 +   extern unsigned char _HShift;
  2.1248 +#  define ACC_MM_AHSHIFT      ((unsigned) _HShift)
  2.1249 +#else
  2.1250 +#  error "FIXME - implement ACC_MM_AHSHIFT"
  2.1251 +#endif
  2.1252 +#ifdef __cplusplus
  2.1253 +}
  2.1254 +#endif
  2.1255 +#endif
  2.1256 +#elif (ACC_ARCH_C166)
  2.1257 +#if !defined(__MODEL__)
  2.1258 +#  error "FIXME - ACC_ARCH_C166 __MODEL__"
  2.1259 +#elif ((__MODEL__) == 0)
  2.1260 +#  define ACC_MM_SMALL          1
  2.1261 +#elif ((__MODEL__) == 1)
  2.1262 +#  define ACC_MM_SMALL          1
  2.1263 +#elif ((__MODEL__) == 2)
  2.1264 +#  define ACC_MM_LARGE          1
  2.1265 +#elif ((__MODEL__) == 3)
  2.1266 +#  define ACC_MM_TINY           1
  2.1267 +#elif ((__MODEL__) == 4)
  2.1268 +#  define ACC_MM_XTINY          1
  2.1269 +#elif ((__MODEL__) == 5)
  2.1270 +#  define ACC_MM_XSMALL         1
  2.1271 +#else
  2.1272 +#  error "FIXME - ACC_ARCH_C166 __MODEL__"
  2.1273 +#endif
  2.1274 +#elif (ACC_ARCH_MCS251)
  2.1275 +#if !defined(__MODEL__)
  2.1276 +#  error "FIXME - ACC_ARCH_MCS251 __MODEL__"
  2.1277 +#elif ((__MODEL__) == 0)
  2.1278 +#  define ACC_MM_SMALL          1
  2.1279 +#elif ((__MODEL__) == 2)
  2.1280 +#  define ACC_MM_LARGE          1
  2.1281 +#elif ((__MODEL__) == 3)
  2.1282 +#  define ACC_MM_TINY           1
  2.1283 +#elif ((__MODEL__) == 4)
  2.1284 +#  define ACC_MM_XTINY          1
  2.1285 +#elif ((__MODEL__) == 5)
  2.1286 +#  define ACC_MM_XSMALL         1
  2.1287 +#else
  2.1288 +#  error "FIXME - ACC_ARCH_MCS251 __MODEL__"
  2.1289 +#endif
  2.1290 +#elif (ACC_ARCH_MCS51)
  2.1291 +#if !defined(__MODEL__)
  2.1292 +#  error "FIXME - ACC_ARCH_MCS51 __MODEL__"
  2.1293 +#elif ((__MODEL__) == 1)
  2.1294 +#  define ACC_MM_SMALL          1
  2.1295 +#elif ((__MODEL__) == 2)
  2.1296 +#  define ACC_MM_LARGE          1
  2.1297 +#elif ((__MODEL__) == 3)
  2.1298 +#  define ACC_MM_TINY           1
  2.1299 +#elif ((__MODEL__) == 4)
  2.1300 +#  define ACC_MM_XTINY          1
  2.1301 +#elif ((__MODEL__) == 5)
  2.1302 +#  define ACC_MM_XSMALL         1
  2.1303 +#else
  2.1304 +#  error "FIXME - ACC_ARCH_MCS51 __MODEL__"
  2.1305 +#endif
  2.1306 +#elif (ACC_ARCH_CRAY_PVP)
  2.1307 +#  define ACC_MM_PVP            1
  2.1308 +#else
  2.1309 +#  define ACC_MM_FLAT           1
  2.1310 +#endif
  2.1311 +#if (ACC_MM_COMPACT)
  2.1312 +#  define ACC_INFO_MM           "compact"
  2.1313 +#elif (ACC_MM_FLAT)
  2.1314 +#  define ACC_INFO_MM           "flat"
  2.1315 +#elif (ACC_MM_HUGE)
  2.1316 +#  define ACC_INFO_MM           "huge"
  2.1317 +#elif (ACC_MM_LARGE)
  2.1318 +#  define ACC_INFO_MM           "large"
  2.1319 +#elif (ACC_MM_MEDIUM)
  2.1320 +#  define ACC_INFO_MM           "medium"
  2.1321 +#elif (ACC_MM_PVP)
  2.1322 +#  define ACC_INFO_MM           "pvp"
  2.1323 +#elif (ACC_MM_SMALL)
  2.1324 +#  define ACC_INFO_MM           "small"
  2.1325 +#elif (ACC_MM_TINY)
  2.1326 +#  define ACC_INFO_MM           "tiny"
  2.1327 +#else
  2.1328 +#  error "unknown memory model"
  2.1329 +#endif
  2.1330 +#endif
  2.1331 +#if !defined(__acc_gnuc_extension__)
  2.1332 +#if (ACC_CC_GNUC >= 0x020800ul)
  2.1333 +#  define __acc_gnuc_extension__    __extension__
  2.1334 +#elif (ACC_CC_ARMCC_GNUC || ACC_CC_CLANG || ACC_CC_LLVM || ACC_CC_PATHSCALE)
  2.1335 +#  define __acc_gnuc_extension__    __extension__
  2.1336 +#elif (ACC_CC_IBMC >= 600)
  2.1337 +#  define __acc_gnuc_extension__    __extension__
  2.1338 +#endif
  2.1339 +#endif
  2.1340 +#if !defined(__acc_gnuc_extension__)
  2.1341 +#  define __acc_gnuc_extension__    /*empty*/
  2.1342 +#endif
  2.1343 +#if !defined(acc_has_builtin)
  2.1344 +#if (ACC_CC_CLANG) && defined(__has_builtin)
  2.1345 +#  define acc_has_builtin           __has_builtin
  2.1346 +#endif
  2.1347 +#endif
  2.1348 +#if !defined(acc_has_builtin)
  2.1349 +#  define acc_has_builtin(x)        0
  2.1350 +#endif
  2.1351 +#if !defined(acc_has_attribute)
  2.1352 +#if (ACC_CC_CLANG) && defined(__has_attribute)
  2.1353 +#  define acc_has_attribute         __has_attribute
  2.1354 +#endif
  2.1355 +#endif
  2.1356 +#if !defined(acc_has_attribute)
  2.1357 +#  define acc_has_attribute(x)      0
  2.1358 +#endif
  2.1359 +#if !defined(acc_has_declspec_attribute)
  2.1360 +#if (ACC_CC_CLANG) && defined(__has_declspec_attribute)
  2.1361 +#  define acc_has_declspec_attribute        __has_declspec_attribute
  2.1362 +#endif
  2.1363 +#endif
  2.1364 +#if !defined(acc_has_declspec_attribute)
  2.1365 +#  define acc_has_declspec_attribute(x)     0
  2.1366 +#endif
  2.1367 +#if !defined(acc_has_feature)
  2.1368 +#if (ACC_CC_CLANG) && defined(__has_feature)
  2.1369 +#  define acc_has_feature         __has_feature
  2.1370 +#endif
  2.1371 +#endif
  2.1372 +#if !defined(acc_has_feature)
  2.1373 +#  define acc_has_feature(x)        0
  2.1374 +#endif
  2.1375 +#if !defined(acc_has_extension)
  2.1376 +#if (ACC_CC_CLANG) && defined(__has_extension)
  2.1377 +#  define acc_has_extension         __has_extension
  2.1378 +#elif (ACC_CC_CLANG) && defined(__has_feature)
  2.1379 +#  define acc_has_extension         __has_feature
  2.1380 +#endif
  2.1381 +#endif
  2.1382 +#if !defined(acc_has_extension)
  2.1383 +#  define acc_has_extension(x)      0
  2.1384 +#endif
  2.1385 +#if !defined(ACC_CFG_USE_NEW_STYLE_CASTS) && defined(__cplusplus) && 0
  2.1386 +#  if (ACC_CC_GNUC && (ACC_CC_GNUC < 0x020800ul))
  2.1387 +#    define ACC_CFG_USE_NEW_STYLE_CASTS 0
  2.1388 +#  elif (ACC_CC_INTELC && (__INTEL_COMPILER < 1200))
  2.1389 +#    define ACC_CFG_USE_NEW_STYLE_CASTS 0
  2.1390 +#  else
  2.1391 +#    define ACC_CFG_USE_NEW_STYLE_CASTS 1
  2.1392 +#  endif
  2.1393 +#endif
  2.1394 +#if !defined(ACC_CFG_USE_NEW_STYLE_CASTS)
  2.1395 +#  define ACC_CFG_USE_NEW_STYLE_CASTS 0
  2.1396 +#endif
  2.1397 +#if !defined(__cplusplus)
  2.1398 +#  if defined(ACC_CFG_USE_NEW_STYLE_CASTS)
  2.1399 +#    undef ACC_CFG_USE_NEW_STYLE_CASTS
  2.1400 +#  endif
  2.1401 +#  define ACC_CFG_USE_NEW_STYLE_CASTS 0
  2.1402 +#endif
  2.1403 +#if !defined(ACC_REINTERPRET_CAST)
  2.1404 +#  if (ACC_CFG_USE_NEW_STYLE_CASTS)
  2.1405 +#    define ACC_REINTERPRET_CAST(t,e)       (reinterpret_cast<t> (e))
  2.1406 +#  endif
  2.1407 +#endif
  2.1408 +#if !defined(ACC_REINTERPRET_CAST)
  2.1409 +#  define ACC_REINTERPRET_CAST(t,e)         ((t) (e))
  2.1410 +#endif
  2.1411 +#if !defined(ACC_STATIC_CAST)
  2.1412 +#  if (ACC_CFG_USE_NEW_STYLE_CASTS)
  2.1413 +#    define ACC_STATIC_CAST(t,e)            (static_cast<t> (e))
  2.1414 +#  endif
  2.1415 +#endif
  2.1416 +#if !defined(ACC_STATIC_CAST)
  2.1417 +#  define ACC_STATIC_CAST(t,e)              ((t) (e))
  2.1418 +#endif
  2.1419 +#if !defined(ACC_STATIC_CAST2)
  2.1420 +#  define ACC_STATIC_CAST2(t1,t2,e)         ACC_STATIC_CAST(t1, ACC_STATIC_CAST(t2, e))
  2.1421 +#endif
  2.1422 +#if !defined(ACC_UNCONST_CAST)
  2.1423 +#  if (ACC_CFG_USE_NEW_STYLE_CASTS)
  2.1424 +#    define ACC_UNCONST_CAST(t,e)           (const_cast<t> (e))
  2.1425 +#  elif (ACC_HAVE_MM_HUGE_PTR)
  2.1426 +#    define ACC_UNCONST_CAST(t,e)           ((t) (e))
  2.1427 +#  elif (ACC_CC_ARMCC_GNUC || ACC_CC_CLANG || ACC_CC_GNUC || ACC_CC_LLVM || ACC_CC_PATHSCALE)
  2.1428 +#    define ACC_UNCONST_CAST(t,e)           ((t) ((void *) ((acc_uintptr_t) ((const void *) (e)))))
  2.1429 +#  endif
  2.1430 +#endif
  2.1431 +#if !defined(ACC_UNCONST_CAST)
  2.1432 +#  define ACC_UNCONST_CAST(t,e)             ((t) ((void *) ((const void *) (e))))
  2.1433 +#endif
  2.1434 +#if !defined(ACC_UNCONST_VOLATILE_CAST)
  2.1435 +#  if (ACC_CFG_USE_NEW_STYLE_CASTS)
  2.1436 +#    define ACC_UNCONST_VOLATILE_CAST(t,e)  (const_cast<t> (e))
  2.1437 +#  elif (ACC_HAVE_MM_HUGE_PTR)
  2.1438 +#    define ACC_UNCONST_VOLATILE_CAST(t,e)  ((t) (e))
  2.1439 +#  elif (ACC_CC_ARMCC_GNUC || ACC_CC_CLANG || ACC_CC_GNUC || ACC_CC_LLVM || ACC_CC_PATHSCALE)
  2.1440 +#    define ACC_UNCONST_VOLATILE_CAST(t,e)  ((t) ((volatile void *) ((acc_uintptr_t) ((volatile const void *) (e)))))
  2.1441 +#  endif
  2.1442 +#endif
  2.1443 +#if !defined(ACC_UNCONST_VOLATILE_CAST)
  2.1444 +#  define ACC_UNCONST_VOLATILE_CAST(t,e)    ((t) ((volatile void *) ((volatile const void *) (e))))
  2.1445 +#endif
  2.1446 +#if !defined(ACC_UNVOLATILE_CAST)
  2.1447 +#  if (ACC_CFG_USE_NEW_STYLE_CASTS)
  2.1448 +#    define ACC_UNVOLATILE_CAST(t,e)        (const_cast<t> (e))
  2.1449 +#  elif (ACC_HAVE_MM_HUGE_PTR)
  2.1450 +#    define ACC_UNVOLATILE_CAST(t,e)        ((t) (e))
  2.1451 +#  elif (ACC_CC_ARMCC_GNUC || ACC_CC_CLANG || ACC_CC_GNUC || ACC_CC_LLVM || ACC_CC_PATHSCALE)
  2.1452 +#    define ACC_UNVOLATILE_CAST(t,e)        ((t) ((void *) ((acc_uintptr_t) ((volatile void *) (e)))))
  2.1453 +#  endif
  2.1454 +#endif
  2.1455 +#if !defined(ACC_UNVOLATILE_CAST)
  2.1456 +#  define ACC_UNVOLATILE_CAST(t,e)          ((t) ((void *) ((volatile void *) (e))))
  2.1457 +#endif
  2.1458 +#if !defined(ACC_UNVOLATILE_CONST_CAST)
  2.1459 +#  if (ACC_CFG_USE_NEW_STYLE_CASTS)
  2.1460 +#    define ACC_UNVOLATILE_CONST_CAST(t,e)  (const_cast<t> (e))
  2.1461 +#  elif (ACC_HAVE_MM_HUGE_PTR)
  2.1462 +#    define ACC_UNVOLATILE_CONST_CAST(t,e)  ((t) (e))
  2.1463 +#  elif (ACC_CC_ARMCC_GNUC || ACC_CC_CLANG || ACC_CC_GNUC || ACC_CC_LLVM || ACC_CC_PATHSCALE)
  2.1464 +#    define ACC_UNVOLATILE_CONST_CAST(t,e)  ((t) ((const void *) ((acc_uintptr_t) ((volatile const void *) (e)))))
  2.1465 +#  endif
  2.1466 +#endif
  2.1467 +#if !defined(ACC_UNVOLATILE_CONST_CAST)
  2.1468 +#  define ACC_UNVOLATILE_CONST_CAST(t,e)    ((t) ((const void *) ((volatile const void *) (e))))
  2.1469 +#endif
  2.1470 +#if !defined(ACC_PCAST)
  2.1471 +#  if (ACC_HAVE_MM_HUGE_PTR)
  2.1472 +#    define ACC_PCAST(t,e)                  ((t) (e))
  2.1473 +#  endif
  2.1474 +#endif
  2.1475 +#if !defined(ACC_PCAST)
  2.1476 +#  define ACC_PCAST(t,e)                    ACC_STATIC_CAST(t, ACC_STATIC_CAST(void *, e))
  2.1477 +#endif
  2.1478 +#if !defined(ACC_CCAST)
  2.1479 +#  if (ACC_HAVE_MM_HUGE_PTR)
  2.1480 +#    define ACC_CCAST(t,e)                  ((t) (e))
  2.1481 +#  endif
  2.1482 +#endif
  2.1483 +#if !defined(ACC_CCAST)
  2.1484 +#  define ACC_CCAST(t,e)                    ACC_STATIC_CAST(t, ACC_STATIC_CAST(const void *, e))
  2.1485 +#endif
  2.1486 +#if !defined(ACC_ICONV)
  2.1487 +#  define ACC_ICONV(t,e)                    ACC_STATIC_CAST(t, e)
  2.1488 +#endif
  2.1489 +#if !defined(ACC_ICAST)
  2.1490 +#  define ACC_ICAST(t,e)                    ACC_STATIC_CAST(t, e)
  2.1491 +#endif
  2.1492 +#if !defined(ACC_ITRUNC)
  2.1493 +#  define ACC_ITRUNC(t,e)                   ACC_STATIC_CAST(t, e)
  2.1494 +#endif
  2.1495 +#if !defined(__acc_cte)
  2.1496 +#  if (ACC_CC_MSC || ACC_CC_WATCOMC)
  2.1497 +#    define __acc_cte(e)            ((void)0,(e))
  2.1498 +#  elif 1
  2.1499 +#    define __acc_cte(e)            ((void)0,(e))
  2.1500 +#  endif
  2.1501 +#endif
  2.1502 +#if !defined(__acc_cte)
  2.1503 +#  define __acc_cte(e)              (e)
  2.1504 +#endif
  2.1505 +#if !defined(ACC_BLOCK_BEGIN)
  2.1506 +#  define ACC_BLOCK_BEGIN           do {
  2.1507 +#  define ACC_BLOCK_END             } while __acc_cte(0)
  2.1508 +#endif
  2.1509 +#if !defined(ACC_UNUSED)
  2.1510 +#  if (ACC_CC_BORLANDC && (__BORLANDC__ >= 0x0600))
  2.1511 +#    define ACC_UNUSED(var)         ((void) &var)
  2.1512 +#  elif (ACC_CC_BORLANDC || ACC_CC_HIGHC || ACC_CC_NDPC || ACC_CC_PELLESC || ACC_CC_TURBOC)
  2.1513 +#    define ACC_UNUSED(var)         if (&var) ; else
  2.1514 +#  elif (ACC_CC_CLANG && (ACC_CC_CLANG >= 0x030200ul))
  2.1515 +#    define ACC_UNUSED(var)         ((void) &var)
  2.1516 +#  elif (ACC_CC_CLANG || ACC_CC_GNUC || ACC_CC_LLVM || ACC_CC_PATHSCALE)
  2.1517 +#    define ACC_UNUSED(var)         ((void) var)
  2.1518 +#  elif (ACC_CC_MSC && (_MSC_VER < 900))
  2.1519 +#    define ACC_UNUSED(var)         if (&var) ; else
  2.1520 +#  elif (ACC_CC_KEILC)
  2.1521 +#    define ACC_UNUSED(var)         {extern int acc_unused__[1-2*!(sizeof(var)>0)]; (void)acc_unused__;}
  2.1522 +#  elif (ACC_CC_PACIFICC)
  2.1523 +#    define ACC_UNUSED(var)         ((void) sizeof(var))
  2.1524 +#  elif (ACC_CC_WATCOMC) && defined(__cplusplus)
  2.1525 +#    define ACC_UNUSED(var)         ((void) var)
  2.1526 +#  else
  2.1527 +#    define ACC_UNUSED(var)         ((void) &var)
  2.1528 +#  endif
  2.1529 +#endif
  2.1530 +#if !defined(ACC_UNUSED_RESULT)
  2.1531 +#  define ACC_UNUSED_RESULT(var)    ACC_UNUSED(var)
  2.1532 +#endif
  2.1533 +#if !defined(ACC_UNUSED_FUNC)
  2.1534 +#  if (ACC_CC_BORLANDC && (__BORLANDC__ >= 0x0600))
  2.1535 +#    define ACC_UNUSED_FUNC(func)   ((void) func)
  2.1536 +#  elif (ACC_CC_BORLANDC || ACC_CC_NDPC || ACC_CC_TURBOC)
  2.1537 +#    define ACC_UNUSED_FUNC(func)   if (func) ; else
  2.1538 +#  elif (ACC_CC_CLANG || ACC_CC_LLVM)
  2.1539 +#    define ACC_UNUSED_FUNC(func)   ((void) &func)
  2.1540 +#  elif (ACC_CC_MSC && (_MSC_VER < 900))
  2.1541 +#    define ACC_UNUSED_FUNC(func)   if (func) ; else
  2.1542 +#  elif (ACC_CC_MSC)
  2.1543 +#    define ACC_UNUSED_FUNC(func)   ((void) &func)
  2.1544 +#  elif (ACC_CC_KEILC || ACC_CC_PELLESC)
  2.1545 +#    define ACC_UNUSED_FUNC(func)   {extern int acc_unused__[1-2*!(sizeof((int)func)>0)]; (void)acc_unused__;}
  2.1546 +#  else
  2.1547 +#    define ACC_UNUSED_FUNC(func)   ((void) func)
  2.1548 +#  endif
  2.1549 +#endif
  2.1550 +#if !defined(ACC_UNUSED_LABEL)
  2.1551 +#  if (ACC_CC_CLANG >= 0x020800ul)
  2.1552 +#    define ACC_UNUSED_LABEL(l)     (__acc_gnuc_extension__ ((void) ((const void *) &&l)))
  2.1553 +#  elif (ACC_CC_ARMCC || ACC_CC_CLANG || ACC_CC_INTELC || ACC_CC_WATCOMC)
  2.1554 +#    define ACC_UNUSED_LABEL(l)     if __acc_cte(0) goto l
  2.1555 +#  else
  2.1556 +#    define ACC_UNUSED_LABEL(l)     switch (0) case 1:goto l
  2.1557 +#  endif
  2.1558 +#endif
  2.1559 +#if !defined(ACC_DEFINE_UNINITIALIZED_VAR)
  2.1560 +#  if 0
  2.1561 +#    define ACC_DEFINE_UNINITIALIZED_VAR(type,var,init)  type var
  2.1562 +#  elif 0 && (ACC_CC_GNUC)
  2.1563 +#    define ACC_DEFINE_UNINITIALIZED_VAR(type,var,init)  type var = var
  2.1564 +#  else
  2.1565 +#    define ACC_DEFINE_UNINITIALIZED_VAR(type,var,init)  type var = init
  2.1566 +#  endif
  2.1567 +#endif
  2.1568 +#if !defined(__acc_inline)
  2.1569 +#if (ACC_CC_TURBOC && (__TURBOC__ <= 0x0295))
  2.1570 +#elif defined(__cplusplus)
  2.1571 +#  define __acc_inline          inline
  2.1572 +#elif defined(__STDC_VERSION__) && (__STDC_VERSION__-0 >= 199901L)
  2.1573 +#  define __acc_inline          inline
  2.1574 +#elif (ACC_CC_BORLANDC && (__BORLANDC__ >= 0x0550))
  2.1575 +#  define __acc_inline          __inline
  2.1576 +#elif (ACC_CC_ARMCC_GNUC || ACC_CC_CILLY || ACC_CC_CLANG || ACC_CC_GNUC || ACC_CC_LLVM || ACC_CC_PATHSCALE || ACC_CC_PGI)
  2.1577 +#  define __acc_inline          __inline__
  2.1578 +#elif (ACC_CC_DMC)
  2.1579 +#  define __acc_inline          __inline
  2.1580 +#elif (ACC_CC_GHS)
  2.1581 +#  define __acc_inline          __inline__
  2.1582 +#elif (ACC_CC_IBMC >= 600)
  2.1583 +#  define __acc_inline          __inline__
  2.1584 +#elif (ACC_CC_INTELC)
  2.1585 +#  define __acc_inline          __inline
  2.1586 +#elif (ACC_CC_MWERKS && (__MWERKS__ >= 0x2405))
  2.1587 +#  define __acc_inline          __inline
  2.1588 +#elif (ACC_CC_MSC && (_MSC_VER >= 900))
  2.1589 +#  define __acc_inline          __inline
  2.1590 +#elif (ACC_CC_SUNPROC >= 0x5100)
  2.1591 +#  define __acc_inline          __inline__
  2.1592 +#endif
  2.1593 +#endif
  2.1594 +#if defined(__acc_inline)
  2.1595 +#  ifndef __acc_HAVE_inline
  2.1596 +#  define __acc_HAVE_inline 1
  2.1597 +#  endif
  2.1598 +#else
  2.1599 +#  define __acc_inline          /*empty*/
  2.1600 +#endif
  2.1601 +#if !defined(__acc_forceinline)
  2.1602 +#if (ACC_CC_GNUC >= 0x030200ul)
  2.1603 +#  define __acc_forceinline     __inline__ __attribute__((__always_inline__))
  2.1604 +#elif (ACC_CC_IBMC >= 700)
  2.1605 +#  define __acc_forceinline     __inline__ __attribute__((__always_inline__))
  2.1606 +#elif (ACC_CC_INTELC_MSC && (__INTEL_COMPILER >= 450))
  2.1607 +#  define __acc_forceinline     __forceinline
  2.1608 +#elif (ACC_CC_INTELC_GNUC && (__INTEL_COMPILER >= 800))
  2.1609 +#  define __acc_forceinline     __inline__ __attribute__((__always_inline__))
  2.1610 +#elif (ACC_CC_ARMCC_GNUC || ACC_CC_CLANG || ACC_CC_LLVM || ACC_CC_PATHSCALE)
  2.1611 +#  define __acc_forceinline     __inline__ __attribute__((__always_inline__))
  2.1612 +#elif (ACC_CC_MSC && (_MSC_VER >= 1200))
  2.1613 +#  define __acc_forceinline     __forceinline
  2.1614 +#elif (ACC_CC_PGI >= 0x0d0a00ul)
  2.1615 +#  define __acc_forceinline     __inline__ __attribute__((__always_inline__))
  2.1616 +#elif (ACC_CC_SUNPROC >= 0x5100)
  2.1617 +#  define __acc_forceinline     __inline__ __attribute__((__always_inline__))
  2.1618 +#endif
  2.1619 +#endif
  2.1620 +#if defined(__acc_forceinline)
  2.1621 +#  ifndef __acc_HAVE_forceinline
  2.1622 +#  define __acc_HAVE_forceinline 1
  2.1623 +#  endif
  2.1624 +#else
  2.1625 +#  define __acc_forceinline     __acc_inline
  2.1626 +#endif
  2.1627 +#if !defined(__acc_noinline)
  2.1628 +#if 1 && (ACC_ARCH_I386) && (ACC_CC_GNUC >= 0x040000ul) && (ACC_CC_GNUC < 0x040003ul)
  2.1629 +#  define __acc_noinline        __attribute__((__noinline__,__used__))
  2.1630 +#elif (ACC_CC_GNUC >= 0x030200ul)
  2.1631 +#  define __acc_noinline        __attribute__((__noinline__))
  2.1632 +#elif (ACC_CC_IBMC >= 700)
  2.1633 +#  define __acc_noinline        __attribute__((__noinline__))
  2.1634 +#elif (ACC_CC_INTELC_MSC && (__INTEL_COMPILER >= 600))
  2.1635 +#  define __acc_noinline        __declspec(noinline)
  2.1636 +#elif (ACC_CC_INTELC_GNUC && (__INTEL_COMPILER >= 800))
  2.1637 +#  define __acc_noinline        __attribute__((__noinline__))
  2.1638 +#elif (ACC_CC_ARMCC_GNUC || ACC_CC_CLANG || ACC_CC_LLVM || ACC_CC_PATHSCALE)
  2.1639 +#  define __acc_noinline        __attribute__((__noinline__))
  2.1640 +#elif (ACC_CC_MSC && (_MSC_VER >= 1300))
  2.1641 +#  define __acc_noinline        __declspec(noinline)
  2.1642 +#elif (ACC_CC_MWERKS && (__MWERKS__ >= 0x3200) && (ACC_OS_WIN32 || ACC_OS_WIN64))
  2.1643 +#  if defined(__cplusplus)
  2.1644 +#  else
  2.1645 +#    define __acc_noinline      __declspec(noinline)
  2.1646 +#  endif
  2.1647 +#elif (ACC_CC_PGI >= 0x0d0a00ul)
  2.1648 +#  define __acc_noinline        __attribute__((__noinline__))
  2.1649 +#elif (ACC_CC_SUNPROC >= 0x5100)
  2.1650 +#  define __acc_noinline        __attribute__((__noinline__))
  2.1651 +#endif
  2.1652 +#endif
  2.1653 +#if defined(__acc_noinline)
  2.1654 +#  ifndef __acc_HAVE_noinline
  2.1655 +#  define __acc_HAVE_noinline 1
  2.1656 +#  endif
  2.1657 +#else
  2.1658 +#  define __acc_noinline        /*empty*/
  2.1659 +#endif
  2.1660 +#if (__acc_HAVE_forceinline || __acc_HAVE_noinline) && !(__acc_HAVE_inline)
  2.1661 +#  error "unexpected configuration - check your compiler defines"
  2.1662 +#endif
  2.1663 +#if !defined(__acc_static_inline)
  2.1664 +#if (ACC_CC_IBMC)
  2.1665 +#  define __acc_static_inline       __acc_gnuc_extension__ static __acc_inline
  2.1666 +#endif
  2.1667 +#endif
  2.1668 +#if !defined(__acc_static_inline)
  2.1669 +#  define __acc_static_inline       static __acc_inline
  2.1670 +#endif
  2.1671 +#if !defined(__acc_static_forceinline)
  2.1672 +#if (ACC_CC_IBMC)
  2.1673 +#  define __acc_static_forceinline  __acc_gnuc_extension__ static __acc_forceinline
  2.1674 +#endif
  2.1675 +#endif
  2.1676 +#if !defined(__acc_static_forceinline)
  2.1677 +#  define __acc_static_forceinline  static __acc_forceinline
  2.1678 +#endif
  2.1679 +#if !defined(__acc_static_noinline)
  2.1680 +#if (ACC_CC_IBMC)
  2.1681 +#  define __acc_static_noinline     __acc_gnuc_extension__ static __acc_noinline
  2.1682 +#endif
  2.1683 +#endif
  2.1684 +#if !defined(__acc_static_noinline)
  2.1685 +#  define __acc_static_noinline     static __acc_noinline
  2.1686 +#endif
  2.1687 +#if !defined(__acc_c99_extern_inline)
  2.1688 +#if defined(__GNUC_GNU_INLINE__)
  2.1689 +#  define __acc_c99_extern_inline   __acc_inline
  2.1690 +#elif defined(__GNUC_STDC_INLINE__)
  2.1691 +#  define __acc_c99_extern_inline   extern __acc_inline
  2.1692 +#elif defined(__STDC_VERSION__) && (__STDC_VERSION__-0 >= 199901L)
  2.1693 +#  define __acc_c99_extern_inline   extern __acc_inline
  2.1694 +#endif
  2.1695 +#if !defined(__acc_c99_extern_inline) && (__acc_HAVE_inline)
  2.1696 +#  define __acc_c99_extern_inline   __acc_inline
  2.1697 +#endif
  2.1698 +#endif
  2.1699 +#if defined(__acc_c99_extern_inline)
  2.1700 +#  ifndef __acc_HAVE_c99_extern_inline
  2.1701 +#  define __acc_HAVE_c99_extern_inline 1
  2.1702 +#  endif
  2.1703 +#else
  2.1704 +#  define __acc_c99_extern_inline   /*empty*/
  2.1705 +#endif
  2.1706 +#if !defined(__acc_may_alias)
  2.1707 +#if (ACC_CC_GNUC >= 0x030400ul)
  2.1708 +#  define __acc_may_alias       __attribute__((__may_alias__))
  2.1709 +#elif (ACC_CC_CLANG >= 0x020900ul)
  2.1710 +#  define __acc_may_alias       __attribute__((__may_alias__))
  2.1711 +#elif (ACC_CC_INTELC_GNUC && (__INTEL_COMPILER >= 1210)) && 0
  2.1712 +#  define __acc_may_alias       __attribute__((__may_alias__))
  2.1713 +#elif (ACC_CC_PGI >= 0x0d0a00ul) && 0
  2.1714 +#  define __acc_may_alias       __attribute__((__may_alias__))
  2.1715 +#endif
  2.1716 +#endif
  2.1717 +#if defined(__acc_may_alias)
  2.1718 +#  ifndef __acc_HAVE_may_alias
  2.1719 +#  define __acc_HAVE_may_alias 1
  2.1720 +#  endif
  2.1721 +#else
  2.1722 +#  define __acc_may_alias       /*empty*/
  2.1723 +#endif
  2.1724 +#if !defined(__acc_noreturn)
  2.1725 +#if (ACC_CC_GNUC >= 0x020700ul)
  2.1726 +#  define __acc_noreturn        __attribute__((__noreturn__))
  2.1727 +#elif (ACC_CC_IBMC >= 700)
  2.1728 +#  define __acc_noreturn        __attribute__((__noreturn__))
  2.1729 +#elif (ACC_CC_INTELC_MSC && (__INTEL_COMPILER >= 450))
  2.1730 +#  define __acc_noreturn        __declspec(noreturn)
  2.1731 +#elif (ACC_CC_INTELC_GNUC && (__INTEL_COMPILER >= 600))
  2.1732 +#  define __acc_noreturn        __attribute__((__noreturn__))
  2.1733 +#elif (ACC_CC_ARMCC_GNUC || ACC_CC_CLANG || ACC_CC_LLVM || ACC_CC_PATHSCALE)
  2.1734 +#  define __acc_noreturn        __attribute__((__noreturn__))
  2.1735 +#elif (ACC_CC_MSC && (_MSC_VER >= 1200))
  2.1736 +#  define __acc_noreturn        __declspec(noreturn)
  2.1737 +#elif (ACC_CC_PGI >= 0x0d0a00ul)
  2.1738 +#  define __acc_noreturn        __attribute__((__noreturn__))
  2.1739 +#endif
  2.1740 +#endif
  2.1741 +#if defined(__acc_noreturn)
  2.1742 +#  ifndef __acc_HAVE_noreturn
  2.1743 +#  define __acc_HAVE_noreturn 1
  2.1744 +#  endif
  2.1745 +#else
  2.1746 +#  define __acc_noreturn        /*empty*/
  2.1747 +#endif
  2.1748 +#if !defined(__acc_nothrow)
  2.1749 +#if (ACC_CC_GNUC >= 0x030300ul)
  2.1750 +#  define __acc_nothrow         __attribute__((__nothrow__))
  2.1751 +#elif (ACC_CC_INTELC_MSC && (__INTEL_COMPILER >= 450)) && defined(__cplusplus)
  2.1752 +#  define __acc_nothrow         __declspec(nothrow)
  2.1753 +#elif (ACC_CC_INTELC_GNUC && (__INTEL_COMPILER >= 900))
  2.1754 +#  define __acc_nothrow         __attribute__((__nothrow__))
  2.1755 +#elif (ACC_CC_ARMCC_GNUC || ACC_CC_CLANG || ACC_CC_LLVM || ACC_CC_PATHSCALE)
  2.1756 +#  define __acc_nothrow         __attribute__((__nothrow__))
  2.1757 +#elif (ACC_CC_MSC && (_MSC_VER >= 1200)) && defined(__cplusplus)
  2.1758 +#  define __acc_nothrow         __declspec(nothrow)
  2.1759 +#endif
  2.1760 +#endif
  2.1761 +#if defined(__acc_nothrow)
  2.1762 +#  ifndef __acc_HAVE_nothrow
  2.1763 +#  define __acc_HAVE_nothrow 1
  2.1764 +#  endif
  2.1765 +#else
  2.1766 +#  define __acc_nothrow         /*empty*/
  2.1767 +#endif
  2.1768 +#if !defined(__acc_restrict)
  2.1769 +#if (ACC_CC_GNUC >= 0x030400ul)
  2.1770 +#  define __acc_restrict        __restrict__
  2.1771 +#elif (ACC_CC_IBMC >= 800) && !defined(__cplusplus)
  2.1772 +#  define __acc_restrict        __restrict__
  2.1773 +#elif (ACC_CC_IBMC >= 1210)
  2.1774 +#  define __acc_restrict        __restrict__
  2.1775 +#elif (ACC_CC_INTELC_MSC && (__INTEL_COMPILER >= 600))
  2.1776 +#elif (ACC_CC_INTELC_GNUC && (__INTEL_COMPILER >= 600))
  2.1777 +#  define __acc_restrict        __restrict__
  2.1778 +#elif (ACC_CC_ARMCC_GNUC || ACC_CC_CLANG || ACC_CC_LLVM)
  2.1779 +#  define __acc_restrict        __restrict__
  2.1780 +#elif (ACC_CC_MSC && (_MSC_VER >= 1400))
  2.1781 +#  define __acc_restrict        __restrict
  2.1782 +#elif (ACC_CC_PGI >= 0x0d0a00ul)
  2.1783 +#  define __acc_restrict        __restrict__
  2.1784 +#endif
  2.1785 +#endif
  2.1786 +#if defined(__acc_restrict)
  2.1787 +#  ifndef __acc_HAVE_restrict
  2.1788 +#  define __acc_HAVE_restrict 1
  2.1789 +#  endif
  2.1790 +#else
  2.1791 +#  define __acc_restrict        /*empty*/
  2.1792 +#endif
  2.1793 +#if !defined(__acc_alignof)
  2.1794 +#if (ACC_CC_ARMCC || ACC_CC_CILLY || ACC_CC_CLANG || ACC_CC_GNUC || ACC_CC_LLVM || ACC_CC_PATHSCALE || ACC_CC_PGI)
  2.1795 +#  define __acc_alignof(e)      __alignof__(e)
  2.1796 +#elif (ACC_CC_GHS) && !defined(__cplusplus)
  2.1797 +#  define __acc_alignof(e)      __alignof__(e)
  2.1798 +#elif (ACC_CC_IBMC >= 600)
  2.1799 +#  define __acc_alignof(e)      (__acc_gnuc_extension__ __alignof__(e))
  2.1800 +#elif (ACC_CC_INTELC && (__INTEL_COMPILER >= 700))
  2.1801 +#  define __acc_alignof(e)      __alignof__(e)
  2.1802 +#elif (ACC_CC_MSC && (_MSC_VER >= 1300))
  2.1803 +#  define __acc_alignof(e)      __alignof(e)
  2.1804 +#elif (ACC_CC_SUNPROC >= 0x5100)
  2.1805 +#  define __acc_alignof(e)      __alignof__(e)
  2.1806 +#endif
  2.1807 +#endif
  2.1808 +#if defined(__acc_alignof)
  2.1809 +#  ifndef __acc_HAVE_alignof
  2.1810 +#  define __acc_HAVE_alignof 1
  2.1811 +#  endif
  2.1812 +#endif
  2.1813 +#if !defined(__acc_struct_packed)
  2.1814 +#if   (ACC_CC_CLANG && (ACC_CC_CLANG < 0x020800ul)) && defined(__cplusplus)
  2.1815 +#elif (ACC_CC_GNUC && (ACC_CC_GNUC < 0x020700ul))
  2.1816 +#elif (ACC_CC_GNUC && (ACC_CC_GNUC < 0x020800ul)) && defined(__cplusplus)
  2.1817 +#elif (ACC_CC_PCC && (ACC_CC_PCC < 0x010100ul))
  2.1818 +#elif (ACC_CC_SUNPROC && (ACC_CC_SUNPROC < 0x5110)) && !defined(__cplusplus)
  2.1819 +#elif (ACC_CC_GNUC >= 0x030400ul) && !(ACC_CC_PCC_GNUC) && (ACC_ARCH_AMD64 || ACC_ARCH_I386)
  2.1820 +#  define __acc_struct_packed(s)        struct s {
  2.1821 +#  define __acc_struct_packed_end()     } __attribute__((__gcc_struct__,__packed__));
  2.1822 +#  define __acc_struct_packed_ma_end()  } __acc_may_alias __attribute__((__gcc_struct__,__packed__));
  2.1823 +#elif (ACC_CC_ARMCC || ACC_CC_CLANG || ACC_CC_GNUC || ACC_CC_INTELC_GNUC || ACC_CC_LLVM || ACC_CC_PATHSCALE || (ACC_CC_PGI >= 0x0d0a00ul) || (ACC_CC_SUNPROC >= 0x5100))
  2.1824 +#  define __acc_struct_packed(s)        struct s {
  2.1825 +#  define __acc_struct_packed_end()     } __attribute__((__packed__));
  2.1826 +#  define __acc_struct_packed_ma_end()  } __acc_may_alias __attribute__((__packed__));
  2.1827 +#elif (ACC_CC_IBMC >= 700)
  2.1828 +#  define __acc_struct_packed(s)        __acc_gnuc_extension__ struct s {
  2.1829 +#  define __acc_struct_packed_end()     } __attribute__((__packed__));
  2.1830 +#  define __acc_struct_packed_ma_end()  } __acc_may_alias __attribute__((__packed__));
  2.1831 +#elif (ACC_CC_INTELC_MSC) || (ACC_CC_MSC && (_MSC_VER >= 1300))
  2.1832 +#  define __acc_struct_packed(s)        __pragma(pack(push,1)) struct s {
  2.1833 +#  define __acc_struct_packed_end()     } __pragma(pack(pop));
  2.1834 +#elif (ACC_CC_WATCOMC && (__WATCOMC__ >= 900))
  2.1835 +#  define __acc_struct_packed(s)        _Packed struct s {
  2.1836 +#  define __acc_struct_packed_end()     };
  2.1837 +#endif
  2.1838 +#endif
  2.1839 +#if defined(__acc_struct_packed) && !defined(__acc_struct_packed_ma)
  2.1840 +#  define __acc_struct_packed_ma(s)     __acc_struct_packed(s)
  2.1841 +#endif
  2.1842 +#if defined(__acc_struct_packed_end) && !defined(__acc_struct_packed_ma_end)
  2.1843 +#  define __acc_struct_packed_ma_end()  __acc_struct_packed_end()
  2.1844 +#endif
  2.1845 +#if !defined(__acc_byte_struct)
  2.1846 +#if defined(__acc_struct_packed)
  2.1847 +#  define __acc_byte_struct(s,n)        __acc_struct_packed(s) unsigned char a[n]; __acc_struct_packed_end()
  2.1848 +#  define __acc_byte_struct_ma(s,n)     __acc_struct_packed_ma(s) unsigned char a[n]; __acc_struct_packed_ma_end()
  2.1849 +#elif (ACC_CC_CILLY || ACC_CC_CLANG || ACC_CC_PGI || (ACC_CC_SUNPROC >= 0x5100))
  2.1850 +#  define __acc_byte_struct(s,n)        struct s { unsigned char a[n]; } __attribute__((__packed__));
  2.1851 +#  define __acc_byte_struct_ma(s,n)     struct s { unsigned char a[n]; } __acc_may_alias __attribute__((__packed__));
  2.1852 +#endif
  2.1853 +#endif
  2.1854 +#if defined(__acc_byte_struct) &&  !defined(__acc_byte_struct_ma)
  2.1855 +#  define __acc_byte_struct_ma(s,n)     __acc_byte_struct(s,n)
  2.1856 +#endif
  2.1857 +#if !defined(__acc_struct_align16) && (__acc_HAVE_alignof)
  2.1858 +#if (ACC_CC_GNUC && (ACC_CC_GNUC < 0x030000ul))
  2.1859 +#elif (ACC_CC_CLANG && (ACC_CC_CLANG < 0x020800ul)) && defined(__cplusplus)
  2.1860 +#elif (ACC_CC_CILLY || ACC_CC_PCC)
  2.1861 +#elif (ACC_CC_INTELC_MSC) || (ACC_CC_MSC && (_MSC_VER >= 1300))
  2.1862 +#  define __acc_struct_align16(s)       struct __declspec(align(16)) s {
  2.1863 +#  define __acc_struct_align16_end()    };
  2.1864 +#  define __acc_struct_align32(s)       struct __declspec(align(32)) s {
  2.1865 +#  define __acc_struct_align32_end()    };
  2.1866 +#  define __acc_struct_align64(s)       struct __declspec(align(64)) s {
  2.1867 +#  define __acc_struct_align64_end()    };
  2.1868 +#elif (ACC_CC_ARMCC || ACC_CC_CLANG || ACC_CC_GNUC || (ACC_CC_IBMC >= 700) || ACC_CC_INTELC_GNUC || ACC_CC_LLVM || ACC_CC_PATHSCALE)
  2.1869 +#  define __acc_struct_align16(s)       struct s {
  2.1870 +#  define __acc_struct_align16_end()    } __attribute__((__aligned__(16)));
  2.1871 +#  define __acc_struct_align32(s)       struct s {
  2.1872 +#  define __acc_struct_align32_end()    } __attribute__((__aligned__(32)));
  2.1873 +#  define __acc_struct_align64(s)       struct s {
  2.1874 +#  define __acc_struct_align64_end()    } __attribute__((__aligned__(64)));
  2.1875 +#endif
  2.1876 +#endif
  2.1877 +#if !defined(__acc_union_um)
  2.1878 +#if   (ACC_CC_CLANG && (ACC_CC_CLANG < 0x020800ul)) && defined(__cplusplus)
  2.1879 +#elif (ACC_CC_GNUC && (ACC_CC_GNUC < 0x020700ul))
  2.1880 +#elif (ACC_CC_GNUC && (ACC_CC_GNUC < 0x020800ul)) && defined(__cplusplus)
  2.1881 +#elif (ACC_CC_INTELC_GNUC && (__INTEL_COMPILER < 810))
  2.1882 +#elif (ACC_CC_PCC && (ACC_CC_PCC < 0x010100ul))
  2.1883 +#elif (ACC_CC_SUNPROC && (ACC_CC_SUNPROC < 0x5110)) && !defined(__cplusplus)
  2.1884 +#elif (ACC_CC_ARMCC || ACC_CC_CLANG || ACC_CC_GNUC || ACC_CC_INTELC_GNUC || ACC_CC_LLVM || ACC_CC_PATHSCALE || (ACC_CC_PGI >= 0x0d0a00ul) || (ACC_CC_SUNPROC >= 0x5100))
  2.1885 +#  define __acc_union_am(s)             union s {
  2.1886 +#  define __acc_union_am_end()          } __acc_may_alias;
  2.1887 +#  define __acc_union_um(s)             union s {
  2.1888 +#  define __acc_union_um_end()          } __acc_may_alias __attribute__((__packed__));
  2.1889 +#elif (ACC_CC_IBMC >= 700)
  2.1890 +#  define __acc_union_am(s)             __acc_gnuc_extension__ union s {
  2.1891 +#  define __acc_union_am_end()          } __acc_may_alias;
  2.1892 +#  define __acc_union_um(s)             __acc_gnuc_extension__ union s {
  2.1893 +#  define __acc_union_um_end()          } __acc_may_alias __attribute__((__packed__));
  2.1894 +#elif (ACC_CC_INTELC_MSC) || (ACC_CC_MSC && (_MSC_VER >= 1300))
  2.1895 +#  define __acc_union_um(s)             __pragma(pack(push,1)) union s {
  2.1896 +#  define __acc_union_um_end()          } __pragma(pack(pop));
  2.1897 +#elif (ACC_CC_WATCOMC && (__WATCOMC__ >= 900))
  2.1898 +#  define __acc_union_um(s)             _Packed union s {
  2.1899 +#  define __acc_union_um_end()          };
  2.1900 +#endif
  2.1901 +#endif
  2.1902 +#if !defined(__acc_union_am)
  2.1903 +#  define __acc_union_am(s)             union s {
  2.1904 +#  define __acc_union_am_end()          };
  2.1905 +#endif
  2.1906 +#if !defined(__acc_constructor)
  2.1907 +#if (ACC_CC_GNUC >= 0x030400ul)
  2.1908 +#  define __acc_constructor     __attribute__((__constructor__,__used__))
  2.1909 +#elif (ACC_CC_GNUC >= 0x020700ul)
  2.1910 +#  define __acc_constructor     __attribute__((__constructor__))
  2.1911 +#elif (ACC_CC_INTELC_GNUC && (__INTEL_COMPILER >= 800))
  2.1912 +#  define __acc_constructor     __attribute__((__constructor__,__used__))
  2.1913 +#elif (ACC_CC_ARMCC_GNUC || ACC_CC_CLANG || ACC_CC_LLVM || ACC_CC_PATHSCALE)
  2.1914 +#  define __acc_constructor     __attribute__((__constructor__))
  2.1915 +#endif
  2.1916 +#endif
  2.1917 +#if defined(__acc_constructor)
  2.1918 +#  ifndef __acc_HAVE_constructor
  2.1919 +#  define __acc_HAVE_constructor 1
  2.1920 +#  endif
  2.1921 +#endif
  2.1922 +#if !defined(__acc_destructor)
  2.1923 +#if (ACC_CC_GNUC >= 0x030400ul)
  2.1924 +#  define __acc_destructor      __attribute__((__destructor__,__used__))
  2.1925 +#elif (ACC_CC_GNUC >= 0x020700ul)
  2.1926 +#  define __acc_destructor      __attribute__((__destructor__))
  2.1927 +#elif (ACC_CC_INTELC_GNUC && (__INTEL_COMPILER >= 800))
  2.1928 +#  define __acc_destructor      __attribute__((__destructor__,__used__))
  2.1929 +#elif (ACC_CC_ARMCC_GNUC || ACC_CC_CLANG || ACC_CC_LLVM || ACC_CC_PATHSCALE)
  2.1930 +#  define __acc_destructor      __attribute__((__destructor__))
  2.1931 +#endif
  2.1932 +#endif
  2.1933 +#if defined(__acc_destructor)
  2.1934 +#  ifndef __acc_HAVE_destructor
  2.1935 +#  define __acc_HAVE_destructor 1
  2.1936 +#  endif
  2.1937 +#endif
  2.1938 +#if (__acc_HAVE_destructor) && !(__acc_HAVE_constructor)
  2.1939 +#  error "unexpected configuration - check your compiler defines"
  2.1940 +#endif
  2.1941 +#if !defined(__acc_likely) && !defined(__acc_unlikely)
  2.1942 +#if (ACC_CC_GNUC >= 0x030200ul)
  2.1943 +#  define __acc_likely(e)       (__builtin_expect(!!(e),1))
  2.1944 +#  define __acc_unlikely(e)     (__builtin_expect(!!(e),0))
  2.1945 +#elif (ACC_CC_IBMC >= 1010)
  2.1946 +#  define __acc_likely(e)       (__builtin_expect(!!(e),1))
  2.1947 +#  define __acc_unlikely(e)     (__builtin_expect(!!(e),0))
  2.1948 +#elif (ACC_CC_INTELC && (__INTEL_COMPILER >= 800))
  2.1949 +#  define __acc_likely(e)       (__builtin_expect(!!(e),1))
  2.1950 +#  define __acc_unlikely(e)     (__builtin_expect(!!(e),0))
  2.1951 +#elif (ACC_CC_ARMCC_GNUC || ACC_CC_CLANG || ACC_CC_LLVM || ACC_CC_PATHSCALE)
  2.1952 +#  define __acc_likely(e)       (__builtin_expect(!!(e),1))
  2.1953 +#  define __acc_unlikely(e)     (__builtin_expect(!!(e),0))
  2.1954 +#endif
  2.1955 +#endif
  2.1956 +#if defined(__acc_likely)
  2.1957 +#  ifndef __acc_HAVE_likely
  2.1958 +#  define __acc_HAVE_likely 1
  2.1959 +#  endif
  2.1960 +#else
  2.1961 +#  define __acc_likely(e)           (e)
  2.1962 +#endif
  2.1963 +#if defined(__acc_very_likely)
  2.1964 +#  ifndef __acc_HAVE_very_likely
  2.1965 +#  define __acc_HAVE_very_likely 1
  2.1966 +#  endif
  2.1967 +#else
  2.1968 +#  define __acc_very_likely(e)      __acc_likely(e)
  2.1969 +#endif
  2.1970 +#if defined(__acc_unlikely)
  2.1971 +#  ifndef __acc_HAVE_unlikely
  2.1972 +#  define __acc_HAVE_unlikely 1
  2.1973 +#  endif
  2.1974 +#else
  2.1975 +#  define __acc_unlikely(e)         (e)
  2.1976 +#endif
  2.1977 +#if defined(__acc_very_unlikely)
  2.1978 +#  ifndef __acc_HAVE_very_unlikely
  2.1979 +#  define __acc_HAVE_very_unlikely 1
  2.1980 +#  endif
  2.1981 +#else
  2.1982 +#  define __acc_very_unlikely(e)    __acc_unlikely(e)
  2.1983 +#endif
  2.1984 +#if !defined(__acc_loop_forever)
  2.1985 +#  if (ACC_CC_IBMC)
  2.1986 +#    define __acc_loop_forever()    ACC_BLOCK_BEGIN for (;;) { ; } ACC_BLOCK_END
  2.1987 +#  else
  2.1988 +#    define __acc_loop_forever()    do { ; } while __acc_cte(1)
  2.1989 +#  endif
  2.1990 +#endif
  2.1991 +#if !defined(__acc_unreachable)
  2.1992 +#if (ACC_CC_CLANG && (ACC_CC_CLANG >= 0x020800ul)) && acc_has_builtin(__builtin_unreachable)
  2.1993 +#  define __acc_unreachable()       __builtin_unreachable();
  2.1994 +#elif (ACC_CC_GNUC >= 0x040500ul)
  2.1995 +#  define __acc_unreachable()       __builtin_unreachable();
  2.1996 +#elif (ACC_CC_INTELC_GNUC && (__INTEL_COMPILER >= 1300)) && 1
  2.1997 +#  define __acc_unreachable()       __builtin_unreachable();
  2.1998 +#endif
  2.1999 +#endif
  2.2000 +#if defined(__acc_unreachable)
  2.2001 +#  ifndef __acc_HAVE_unreachable
  2.2002 +#  define __acc_HAVE_unreachable 1
  2.2003 +#  endif
  2.2004 +#else
  2.2005 +#  if 0
  2.2006 +#  define __acc_unreachable()       ((void)0);
  2.2007 +#  else
  2.2008 +#  define __acc_unreachable()       __acc_loop_forever();
  2.2009 +#  endif
  2.2010 +#endif
  2.2011 +#if !defined(acc_unused_funcs_impl)
  2.2012 +#  if 1 && (ACC_CC_ARMCC_GNUC || ACC_CC_CLANG || (ACC_CC_GNUC >= 0x020700ul) || ACC_CC_INTELC_GNUC || ACC_CC_LLVM || ACC_CC_PATHSCALE || ACC_CC_PGI)
  2.2013 +#    define acc_unused_funcs_impl(r,f)  static r __attribute__((__unused__)) f
  2.2014 +#  elif 1 && (ACC_CC_BORLANDC || ACC_CC_GNUC)
  2.2015 +#    define acc_unused_funcs_impl(r,f)  static r f
  2.2016 +#  else
  2.2017 +#    define acc_unused_funcs_impl(r,f)  __acc_static_forceinline r f
  2.2018 +#  endif
  2.2019 +#endif
  2.2020 +#ifndef __ACC_CTA_NAME
  2.2021 +#if (ACC_CFG_USE_COUNTER)
  2.2022 +#  define __ACC_CTA_NAME(a)         ACC_PP_ECONCAT2(a,__COUNTER__)
  2.2023 +#else
  2.2024 +#  define __ACC_CTA_NAME(a)         ACC_PP_ECONCAT2(a,__LINE__)
  2.2025 +#endif
  2.2026 +#endif
  2.2027 +#if !defined(ACC_COMPILE_TIME_ASSERT_HEADER)
  2.2028 +#  if (ACC_CC_AZTECC || ACC_CC_ZORTECHC)
  2.2029 +#    define ACC_COMPILE_TIME_ASSERT_HEADER(e)  ACC_EXTERN_C_BEGIN extern int __ACC_CTA_NAME(acc_cta__)[1-!(e)]; ACC_EXTERN_C_END
  2.2030 +#  elif (ACC_CC_DMC || ACC_CC_SYMANTECC)
  2.2031 +#    define ACC_COMPILE_TIME_ASSERT_HEADER(e)  ACC_EXTERN_C_BEGIN extern int __ACC_CTA_NAME(acc_cta__)[1u-2*!(e)]; ACC_EXTERN_C_END
  2.2032 +#  elif (ACC_CC_TURBOC && (__TURBOC__ == 0x0295))
  2.2033 +#    define ACC_COMPILE_TIME_ASSERT_HEADER(e)  ACC_EXTERN_C_BEGIN extern int __ACC_CTA_NAME(acc_cta__)[1-!(e)]; ACC_EXTERN_C_END
  2.2034 +#  elif (ACC_CC_CLANG && (ACC_CC_CLANG < 0x020900ul)) && defined(__cplusplus)
  2.2035 +#    define ACC_COMPILE_TIME_ASSERT_HEADER(e)  ACC_EXTERN_C_BEGIN int __ACC_CTA_NAME(acc_cta_f__)(int [1-2*!(e)]); ACC_EXTERN_C_END
  2.2036 +#  elif (ACC_CC_GNUC) && defined(__CHECKER__) && defined(__SPARSE_CHECKER__)
  2.2037 +#    define ACC_COMPILE_TIME_ASSERT_HEADER(e)  ACC_EXTERN_C_BEGIN enum {__ACC_CTA_NAME(acc_cta_e__)=1/!!(e)} __attribute__((__unused__)); ACC_EXTERN_C_END
  2.2038 +#  else
  2.2039 +#    define ACC_COMPILE_TIME_ASSERT_HEADER(e)  ACC_EXTERN_C_BEGIN extern int __ACC_CTA_NAME(acc_cta__)[1-2*!(e)]; ACC_EXTERN_C_END
  2.2040 +#  endif
  2.2041 +#endif
  2.2042 +#if !defined(ACC_COMPILE_TIME_ASSERT)
  2.2043 +#  if (ACC_CC_AZTECC)
  2.2044 +#    define ACC_COMPILE_TIME_ASSERT(e)  {typedef int __ACC_CTA_NAME(acc_cta_t__)[1-!(e)];}
  2.2045 +#  elif (ACC_CC_CLANG && (ACC_CC_CLANG >= 0x030000ul))
  2.2046 +#    define ACC_COMPILE_TIME_ASSERT(e)  {typedef int __ACC_CTA_NAME(acc_cta_t__)[1-2*!(e)] __attribute__((__unused__));}
  2.2047 +#  elif (ACC_CC_DMC || ACC_CC_PACIFICC || ACC_CC_SYMANTECC || ACC_CC_ZORTECHC)
  2.2048 +#    define ACC_COMPILE_TIME_ASSERT(e)  switch(0) case 1:case !(e):break;
  2.2049 +#  elif (ACC_CC_GNUC) && defined(__CHECKER__) && defined(__SPARSE_CHECKER__)
  2.2050 +#    define ACC_COMPILE_TIME_ASSERT(e)  {(void) (0/!!(e));}
  2.2051 +#  elif (ACC_CC_GNUC >= 0x040700ul) && (ACC_CFG_USE_COUNTER) && defined(__cplusplus)
  2.2052 +#    define ACC_COMPILE_TIME_ASSERT(e)  {enum {__ACC_CTA_NAME(acc_cta_e__)=1/!!(e)} __attribute__((__unused__));}
  2.2053 +#  elif (ACC_CC_GNUC >= 0x040700ul)
  2.2054 +#    define ACC_COMPILE_TIME_ASSERT(e)  {typedef int __ACC_CTA_NAME(acc_cta_t__)[1-2*!(e)] __attribute__((__unused__));}
  2.2055 +#  elif (ACC_CC_MSC && (_MSC_VER < 900))
  2.2056 +#    define ACC_COMPILE_TIME_ASSERT(e)  switch(0) case 1:case !(e):break;
  2.2057 +#  elif (ACC_CC_TURBOC && (__TURBOC__ == 0x0295))
  2.2058 +#    define ACC_COMPILE_TIME_ASSERT(e)  switch(0) case 1:case !(e):break;
  2.2059 +#  else
  2.2060 +#    define ACC_COMPILE_TIME_ASSERT(e)  {typedef int __ACC_CTA_NAME(acc_cta_t__)[1-2*!(e)];}
  2.2061 +#  endif
  2.2062 +#endif
  2.2063 +#if (ACC_LANG_ASSEMBLER)
  2.2064 +#  undef ACC_COMPILE_TIME_ASSERT_HEADER
  2.2065 +#  define ACC_COMPILE_TIME_ASSERT_HEADER(e)  /*empty*/
  2.2066 +#else
  2.2067 +ACC_COMPILE_TIME_ASSERT_HEADER(1 == 1)
  2.2068 +#if defined(__cplusplus)
  2.2069 +extern "C" { ACC_COMPILE_TIME_ASSERT_HEADER(2 == 2) }
  2.2070 +#endif
  2.2071 +ACC_COMPILE_TIME_ASSERT_HEADER(3 == 3)
  2.2072 +#endif
  2.2073 +#if (ACC_ARCH_I086 || ACC_ARCH_I386) && (ACC_OS_DOS16 || ACC_OS_DOS32 || ACC_OS_OS2 || ACC_OS_OS216 || ACC_OS_WIN16 || ACC_OS_WIN32 || ACC_OS_WIN64)
  2.2074 +#  if (ACC_CC_GNUC || ACC_CC_HIGHC || ACC_CC_NDPC || ACC_CC_PACIFICC)
  2.2075 +#  elif (ACC_CC_DMC || ACC_CC_SYMANTECC || ACC_CC_ZORTECHC)
  2.2076 +#    define __acc_cdecl                 __cdecl
  2.2077 +#    define __acc_cdecl_atexit          /*empty*/
  2.2078 +#    define __acc_cdecl_main            __cdecl
  2.2079 +#    if (ACC_OS_OS2 && (ACC_CC_DMC || ACC_CC_SYMANTECC))
  2.2080 +#      define __acc_cdecl_qsort         __pascal
  2.2081 +#    elif (ACC_OS_OS2 && (ACC_CC_ZORTECHC))
  2.2082 +#      define __acc_cdecl_qsort         _stdcall
  2.2083 +#    else
  2.2084 +#      define __acc_cdecl_qsort         __cdecl
  2.2085 +#    endif
  2.2086 +#  elif (ACC_CC_WATCOMC)
  2.2087 +#    define __acc_cdecl                 __cdecl
  2.2088 +#  else
  2.2089 +#    define __acc_cdecl                 __cdecl
  2.2090 +#    define __acc_cdecl_atexit          __cdecl
  2.2091 +#    define __acc_cdecl_main            __cdecl
  2.2092 +#    define __acc_cdecl_qsort           __cdecl
  2.2093 +#  endif
  2.2094 +#  if (ACC_CC_GNUC || ACC_CC_HIGHC || ACC_CC_NDPC || ACC_CC_PACIFICC || ACC_CC_WATCOMC)
  2.2095 +#  elif (ACC_OS_OS2 && (ACC_CC_DMC || ACC_CC_SYMANTECC))
  2.2096 +#    define __acc_cdecl_sighandler      __pascal
  2.2097 +#  elif (ACC_OS_OS2 && (ACC_CC_ZORTECHC))
  2.2098 +#    define __acc_cdecl_sighandler      _stdcall
  2.2099 +#  elif (ACC_CC_MSC && (_MSC_VER >= 1400)) && defined(_M_CEE_PURE)
  2.2100 +#    define __acc_cdecl_sighandler      __clrcall
  2.2101 +#  elif (ACC_CC_MSC && (_MSC_VER >= 600 && _MSC_VER < 700))
  2.2102 +#    if defined(_DLL)
  2.2103 +#      define __acc_cdecl_sighandler    _far _cdecl _loadds
  2.2104 +#    elif defined(_MT)
  2.2105 +#      define __acc_cdecl_sighandler    _far _cdecl
  2.2106 +#    else
  2.2107 +#      define __acc_cdecl_sighandler    _cdecl
  2.2108 +#    endif
  2.2109 +#  else
  2.2110 +#    define __acc_cdecl_sighandler      __cdecl
  2.2111 +#  endif
  2.2112 +#elif (ACC_ARCH_I386) && (ACC_CC_WATCOMC)
  2.2113 +#  define __acc_cdecl                   __cdecl
  2.2114 +#elif (ACC_ARCH_M68K && ACC_OS_TOS && (ACC_CC_PUREC || ACC_CC_TURBOC))
  2.2115 +#  define __acc_cdecl                   cdecl
  2.2116 +#endif
  2.2117 +#if !defined(__acc_cdecl)
  2.2118 +#  define __acc_cdecl                   /*empty*/
  2.2119 +#endif
  2.2120 +#if !defined(__acc_cdecl_atexit)
  2.2121 +#  define __acc_cdecl_atexit            /*empty*/
  2.2122 +#endif
  2.2123 +#if !defined(__acc_cdecl_main)
  2.2124 +#  define __acc_cdecl_main              /*empty*/
  2.2125 +#endif
  2.2126 +#if !defined(__acc_cdecl_qsort)
  2.2127 +#  define __acc_cdecl_qsort             /*empty*/
  2.2128 +#endif
  2.2129 +#if !defined(__acc_cdecl_sighandler)
  2.2130 +#  define __acc_cdecl_sighandler        /*empty*/
  2.2131 +#endif
  2.2132 +#if !defined(__acc_cdecl_va)
  2.2133 +#  define __acc_cdecl_va                __acc_cdecl
  2.2134 +#endif
  2.2135 +#if !(ACC_CFG_NO_WINDOWS_H)
  2.2136 +#if !defined(ACC_HAVE_WINDOWS_H)
  2.2137 +#if (ACC_OS_CYGWIN || (ACC_OS_EMX && defined(__RSXNT__)) || ACC_OS_WIN32 || ACC_OS_WIN64)
  2.2138 +#  if (ACC_CC_WATCOMC && (__WATCOMC__ < 1000))
  2.2139 +#  elif ((ACC_OS_WIN32 && defined(__PW32__)) && (ACC_CC_GNUC && (ACC_CC_GNUC < 0x030000ul)))
  2.2140 +#  elif ((ACC_OS_CYGWIN || defined(__MINGW32__)) && (ACC_CC_GNUC && (ACC_CC_GNUC < 0x025f00ul)))
  2.2141 +#  else
  2.2142 +#    define ACC_HAVE_WINDOWS_H 1
  2.2143 +#  endif
  2.2144 +#endif
  2.2145 +#endif
  2.2146 +#endif
  2.2147 +#define ACC_SIZEOF_CHAR             1
  2.2148 +#ifndef ACC_SIZEOF_SHORT
  2.2149 +#if defined(SIZEOF_SHORT)
  2.2150 +#  define ACC_SIZEOF_SHORT          (SIZEOF_SHORT)
  2.2151 +#elif defined(__SIZEOF_SHORT__)
  2.2152 +#  define ACC_SIZEOF_SHORT          (__SIZEOF_SHORT__)
  2.2153 +#endif
  2.2154 +#endif
  2.2155 +#ifndef ACC_SIZEOF_INT
  2.2156 +#if defined(SIZEOF_INT)
  2.2157 +#  define ACC_SIZEOF_INT            (SIZEOF_INT)
  2.2158 +#elif defined(__SIZEOF_INT__)
  2.2159 +#  define ACC_SIZEOF_INT            (__SIZEOF_INT__)
  2.2160 +#endif
  2.2161 +#endif
  2.2162 +#ifndef ACC_SIZEOF_LONG
  2.2163 +#if defined(SIZEOF_LONG)
  2.2164 +#  define ACC_SIZEOF_LONG           (SIZEOF_LONG)
  2.2165 +#elif defined(__SIZEOF_LONG__)
  2.2166 +#  define ACC_SIZEOF_LONG           (__SIZEOF_LONG__)
  2.2167 +#endif
  2.2168 +#endif
  2.2169 +#ifndef ACC_SIZEOF_LONG_LONG
  2.2170 +#if defined(SIZEOF_LONG_LONG)
  2.2171 +#  define ACC_SIZEOF_LONG_LONG      (SIZEOF_LONG_LONG)
  2.2172 +#elif defined(__SIZEOF_LONG_LONG__)
  2.2173 +#  define ACC_SIZEOF_LONG_LONG      (__SIZEOF_LONG_LONG__)
  2.2174 +#endif
  2.2175 +#endif
  2.2176 +#ifndef ACC_SIZEOF___INT16
  2.2177 +#if defined(SIZEOF___INT16)
  2.2178 +#  define ACC_SIZEOF___INT16        (SIZEOF___INT16)
  2.2179 +#endif
  2.2180 +#endif
  2.2181 +#ifndef ACC_SIZEOF___INT32
  2.2182 +#if defined(SIZEOF___INT32)
  2.2183 +#  define ACC_SIZEOF___INT32        (SIZEOF___INT32)
  2.2184 +#endif
  2.2185 +#endif
  2.2186 +#ifndef ACC_SIZEOF___INT64
  2.2187 +#if defined(SIZEOF___INT64)
  2.2188 +#  define ACC_SIZEOF___INT64        (SIZEOF___INT64)
  2.2189 +#endif
  2.2190 +#endif
  2.2191 +#ifndef ACC_SIZEOF_VOID_P
  2.2192 +#if defined(SIZEOF_VOID_P)
  2.2193 +#  define ACC_SIZEOF_VOID_P         (SIZEOF_VOID_P)
  2.2194 +#elif defined(__SIZEOF_POINTER__)
  2.2195 +#  define ACC_SIZEOF_VOID_P         (__SIZEOF_POINTER__)
  2.2196 +#endif
  2.2197 +#endif
  2.2198 +#ifndef ACC_SIZEOF_SIZE_T
  2.2199 +#if defined(SIZEOF_SIZE_T)
  2.2200 +#  define ACC_SIZEOF_SIZE_T         (SIZEOF_SIZE_T)
  2.2201 +#elif defined(__SIZEOF_SIZE_T__)
  2.2202 +#  define ACC_SIZEOF_SIZE_T         (__SIZEOF_SIZE_T__)
  2.2203 +#endif
  2.2204 +#endif
  2.2205 +#ifndef ACC_SIZEOF_PTRDIFF_T
  2.2206 +#if defined(SIZEOF_PTRDIFF_T)
  2.2207 +#  define ACC_SIZEOF_PTRDIFF_T      (SIZEOF_PTRDIFF_T)
  2.2208 +#elif defined(__SIZEOF_PTRDIFF_T__)
  2.2209 +#  define ACC_SIZEOF_PTRDIFF_T      (__SIZEOF_PTRDIFF_T__)
  2.2210 +#endif
  2.2211 +#endif
  2.2212 +#define __ACC_LSR(x,b)    (((x)+0ul) >> (b))
  2.2213 +#if !defined(ACC_SIZEOF_SHORT)
  2.2214 +#  if (ACC_ARCH_CRAY_PVP)
  2.2215 +#    define ACC_SIZEOF_SHORT        8
  2.2216 +#  elif (USHRT_MAX == ACC_0xffffL)
  2.2217 +#    define ACC_SIZEOF_SHORT        2
  2.2218 +#  elif (__ACC_LSR(USHRT_MAX,7) == 1)
  2.2219 +#    define ACC_SIZEOF_SHORT        1
  2.2220 +#  elif (__ACC_LSR(USHRT_MAX,15) == 1)
  2.2221 +#    define ACC_SIZEOF_SHORT        2
  2.2222 +#  elif (__ACC_LSR(USHRT_MAX,31) == 1)
  2.2223 +#    define ACC_SIZEOF_SHORT        4
  2.2224 +#  elif (__ACC_LSR(USHRT_MAX,63) == 1)
  2.2225 +#    define ACC_SIZEOF_SHORT        8
  2.2226 +#  elif (__ACC_LSR(USHRT_MAX,127) == 1)
  2.2227 +#    define ACC_SIZEOF_SHORT        16
  2.2228 +#  else
  2.2229 +#    error "ACC_SIZEOF_SHORT"
  2.2230 +#  endif
  2.2231 +#endif
  2.2232 +ACC_COMPILE_TIME_ASSERT_HEADER(ACC_SIZEOF_SHORT == sizeof(short))
  2.2233 +#if !defined(ACC_SIZEOF_INT)
  2.2234 +#  if (ACC_ARCH_CRAY_PVP)
  2.2235 +#    define ACC_SIZEOF_INT          8
  2.2236 +#  elif (UINT_MAX == ACC_0xffffL)
  2.2237 +#    define ACC_SIZEOF_INT          2
  2.2238 +#  elif (UINT_MAX == ACC_0xffffffffL)
  2.2239 +#    define ACC_SIZEOF_INT          4
  2.2240 +#  elif (__ACC_LSR(UINT_MAX,7) == 1)
  2.2241 +#    define ACC_SIZEOF_INT          1
  2.2242 +#  elif (__ACC_LSR(UINT_MAX,15) == 1)
  2.2243 +#    define ACC_SIZEOF_INT          2
  2.2244 +#  elif (__ACC_LSR(UINT_MAX,31) == 1)
  2.2245 +#    define ACC_SIZEOF_INT          4
  2.2246 +#  elif (__ACC_LSR(UINT_MAX,63) == 1)
  2.2247 +#    define ACC_SIZEOF_INT          8
  2.2248 +#  elif (__ACC_LSR(UINT_MAX,127) == 1)
  2.2249 +#    define ACC_SIZEOF_INT          16
  2.2250 +#  else
  2.2251 +#    error "ACC_SIZEOF_INT"
  2.2252 +#  endif
  2.2253 +#endif
  2.2254 +ACC_COMPILE_TIME_ASSERT_HEADER(ACC_SIZEOF_INT == sizeof(int))
  2.2255 +#if !defined(ACC_SIZEOF_LONG)
  2.2256 +#  if (ULONG_MAX == ACC_0xffffffffL)
  2.2257 +#    define ACC_SIZEOF_LONG         4
  2.2258 +#  elif (__ACC_LSR(ULONG_MAX,7) == 1)
  2.2259 +#    define ACC_SIZEOF_LONG         1
  2.2260 +#  elif (__ACC_LSR(ULONG_MAX,15) == 1)
  2.2261 +#    define ACC_SIZEOF_LONG         2
  2.2262 +#  elif (__ACC_LSR(ULONG_MAX,31) == 1)
  2.2263 +#    define ACC_SIZEOF_LONG         4
  2.2264 +#  elif (__ACC_LSR(ULONG_MAX,39) == 1)
  2.2265 +#    define ACC_SIZEOF_LONG         5
  2.2266 +#  elif (__ACC_LSR(ULONG_MAX,63) == 1)
  2.2267 +#    define ACC_SIZEOF_LONG         8
  2.2268 +#  elif (__ACC_LSR(ULONG_MAX,127) == 1)
  2.2269 +#    define ACC_SIZEOF_LONG         16
  2.2270 +#  else
  2.2271 +#    error "ACC_SIZEOF_LONG"
  2.2272 +#  endif
  2.2273 +#endif
  2.2274 +ACC_COMPILE_TIME_ASSERT_HEADER(ACC_SIZEOF_LONG == sizeof(long))
  2.2275 +#if !defined(ACC_SIZEOF_LONG_LONG) && !defined(ACC_SIZEOF___INT64)
  2.2276 +#if (ACC_SIZEOF_LONG > 0 && ACC_SIZEOF_LONG < 8)
  2.2277 +#  if defined(__LONG_MAX__) && defined(__LONG_LONG_MAX__)
  2.2278 +#    if (ACC_CC_GNUC >= 0x030300ul)
  2.2279 +#      if ((__LONG_MAX__-0) == (__LONG_LONG_MAX__-0))
  2.2280 +#        define ACC_SIZEOF_LONG_LONG      ACC_SIZEOF_LONG
  2.2281 +#      elif (__ACC_LSR(__LONG_LONG_MAX__,30) == 1)
  2.2282 +#        define ACC_SIZEOF_LONG_LONG      4
  2.2283 +#      endif
  2.2284 +#    endif
  2.2285 +#  endif
  2.2286 +#endif
  2.2287 +#endif
  2.2288 +#if !defined(ACC_SIZEOF_LONG_LONG) && !defined(ACC_SIZEOF___INT64)
  2.2289 +#if (ACC_SIZEOF_LONG > 0 && ACC_SIZEOF_LONG < 8)
  2.2290 +#if (ACC_ARCH_I086 && ACC_CC_DMC)
  2.2291 +#elif (ACC_CC_CILLY) && defined(__GNUC__)
  2.2292 +#  define ACC_SIZEOF_LONG_LONG      8
  2.2293 +#elif (ACC_CC_ARMCC_GNUC || ACC_CC_CLANG || ACC_CC_GNUC || ACC_CC_LLVM || ACC_CC_PATHSCALE)
  2.2294 +#  define ACC_SIZEOF_LONG_LONG      8
  2.2295 +#elif ((ACC_OS_WIN32 || ACC_OS_WIN64 || defined(_WIN32)) && ACC_CC_MSC && (_MSC_VER >= 1400))
  2.2296 +#  define ACC_SIZEOF_LONG_LONG      8
  2.2297 +#elif (ACC_OS_WIN64 || defined(_WIN64))
  2.2298 +#  define ACC_SIZEOF___INT64        8
  2.2299 +#elif (ACC_ARCH_I386 && (ACC_CC_DMC))
  2.2300 +#  define ACC_SIZEOF_LONG_LONG      8
  2.2301 +#elif (ACC_ARCH_I386 && (ACC_CC_SYMANTECC && (__SC__ >= 0x700)))
  2.2302 +#  define ACC_SIZEOF_LONG_LONG      8
  2.2303 +#elif (ACC_ARCH_I386 && (ACC_CC_INTELC && defined(__linux__)))
  2.2304 +#  define ACC_SIZEOF_LONG_LONG      8
  2.2305 +#elif (ACC_ARCH_I386 && (ACC_CC_MWERKS || ACC_CC_PELLESC || ACC_CC_PGI || ACC_CC_SUNPROC))
  2.2306 +#  define ACC_SIZEOF_LONG_LONG      8
  2.2307 +#elif (ACC_ARCH_I386 && (ACC_CC_INTELC || ACC_CC_MSC))
  2.2308 +#  define ACC_SIZEOF___INT64        8
  2.2309 +#elif ((ACC_OS_WIN32 || defined(_WIN32)) && (ACC_CC_MSC))
  2.2310 +#  define ACC_SIZEOF___INT64        8
  2.2311 +#elif (ACC_ARCH_I386 && (ACC_CC_BORLANDC && (__BORLANDC__ >= 0x0520)))
  2.2312 +#  define ACC_SIZEOF___INT64        8
  2.2313 +#elif (ACC_ARCH_I386 && (ACC_CC_WATCOMC && (__WATCOMC__ >= 1100)))
  2.2314 +#  define ACC_SIZEOF___INT64        8
  2.2315 +#elif (ACC_CC_GHS && defined(__LLONG_BIT) && ((__LLONG_BIT-0) == 64))
  2.2316 +#  define ACC_SIZEOF_LONG_LONG      8
  2.2317 +#elif (ACC_CC_WATCOMC && defined(_INTEGRAL_MAX_BITS) && ((_INTEGRAL_MAX_BITS-0) == 64))
  2.2318 +#  define ACC_SIZEOF___INT64        8
  2.2319 +#elif (ACC_OS_OS400 || defined(__OS400__)) && defined(__LLP64_IFC__)
  2.2320 +#  define ACC_SIZEOF_LONG_LONG      8
  2.2321 +#elif (defined(__vms) || defined(__VMS)) && ((__INITIAL_POINTER_SIZE-0) == 64)
  2.2322 +#  define ACC_SIZEOF_LONG_LONG      8
  2.2323 +#elif (ACC_CC_SDCC) && (ACC_SIZEOF_INT == 2)
  2.2324 +#elif 1 && defined(__STDC_VERSION__) && (__STDC_VERSION__ >= 199901L)
  2.2325 +#  define ACC_SIZEOF_LONG_LONG      8
  2.2326 +#endif
  2.2327 +#endif
  2.2328 +#endif
  2.2329 +#if defined(__cplusplus) && (ACC_CC_GNUC)
  2.2330 +#  if (ACC_CC_GNUC < 0x020800ul)
  2.2331 +#    undef ACC_SIZEOF_LONG_LONG
  2.2332 +#  endif
  2.2333 +#endif
  2.2334 +#if (ACC_CFG_NO_LONG_LONG)
  2.2335 +#  undef ACC_SIZEOF_LONG_LONG
  2.2336 +#elif defined(__NO_LONG_LONG)
  2.2337 +#  undef ACC_SIZEOF_LONG_LONG
  2.2338 +#elif defined(_NO_LONGLONG)
  2.2339 +#  undef ACC_SIZEOF_LONG_LONG
  2.2340 +#endif
  2.2341 +#if !defined(ACC_WORDSIZE)
  2.2342 +#if (ACC_ARCH_ALPHA)
  2.2343 +#  define ACC_WORDSIZE              8
  2.2344 +#elif (ACC_ARCH_AMD64)
  2.2345 +#  define ACC_WORDSIZE              8
  2.2346 +#elif (ACC_ARCH_ARM64)
  2.2347 +#  define ACC_WORDSIZE              8
  2.2348 +#elif (ACC_ARCH_AVR)
  2.2349 +#  define ACC_WORDSIZE              1
  2.2350 +#elif (ACC_ARCH_H8300)
  2.2351 +#  if defined(__H8300H__) || defined(__H8300S__) || defined(__H8300SX__)
  2.2352 +#    define ACC_WORDSIZE            4
  2.2353 +#  else
  2.2354 +#    define ACC_WORDSIZE            2
  2.2355 +#  endif
  2.2356 +#elif (ACC_ARCH_I086)
  2.2357 +#  define ACC_WORDSIZE              2
  2.2358 +#elif (ACC_ARCH_IA64)
  2.2359 +#  define ACC_WORDSIZE              8
  2.2360 +#elif (ACC_ARCH_M16C)
  2.2361 +#  define ACC_WORDSIZE              2
  2.2362 +#elif (ACC_ARCH_SPU)
  2.2363 +#  define ACC_WORDSIZE              4
  2.2364 +#elif (ACC_ARCH_Z80)
  2.2365 +#  define ACC_WORDSIZE              1
  2.2366 +#elif (ACC_SIZEOF_LONG == 8) && ((defined(__mips__) && defined(__R5900__)) || defined(__MIPS_PSX2__))
  2.2367 +#  define ACC_WORDSIZE              8
  2.2368 +#elif (ACC_OS_OS400 || defined(__OS400__))
  2.2369 +#  define ACC_WORDSIZE              8
  2.2370 +#elif (defined(__vms) || defined(__VMS)) && (__INITIAL_POINTER_SIZE+0 == 64)
  2.2371 +#  define ACC_WORDSIZE              8
  2.2372 +#endif
  2.2373 +#endif
  2.2374 +#if !defined(ACC_SIZEOF_VOID_P)
  2.2375 +#if defined(__ILP32__) || defined(__ILP32) || defined(_ILP32)
  2.2376 +ACC_COMPILE_TIME_ASSERT_HEADER(sizeof(int)  == 4)
  2.2377 +ACC_COMPILE_TIME_ASSERT_HEADER(sizeof(long) == 4)
  2.2378 +#  define ACC_SIZEOF_VOID_P         4
  2.2379 +#elif defined(__ILP64__) || defined(__ILP64) || defined(_ILP64)
  2.2380 +ACC_COMPILE_TIME_ASSERT_HEADER(sizeof(int)  == 8)
  2.2381 +ACC_COMPILE_TIME_ASSERT_HEADER(sizeof(long) == 8)
  2.2382 +#  define ACC_SIZEOF_VOID_P         8
  2.2383 +#elif defined(__LLP64__) || defined(__LLP64) || defined(_LLP64) || defined(_WIN64)
  2.2384 +ACC_COMPILE_TIME_ASSERT_HEADER(sizeof(long) == 4)
  2.2385 +#  define ACC_SIZEOF_VOID_P         8
  2.2386 +#elif defined(__LP64__) || defined(__LP64) || defined(_LP64)
  2.2387 +ACC_COMPILE_TIME_ASSERT_HEADER(sizeof(long) == 8)
  2.2388 +#  define ACC_SIZEOF_VOID_P         8
  2.2389 +#elif (ACC_ARCH_AVR)
  2.2390 +#  define ACC_SIZEOF_VOID_P         2
  2.2391 +#elif (ACC_ARCH_C166 || ACC_ARCH_MCS51 || ACC_ARCH_MCS251 || ACC_ARCH_MSP430)
  2.2392 +#  define ACC_SIZEOF_VOID_P         2
  2.2393 +#elif (ACC_ARCH_H8300)
  2.2394 +#  if defined(__H8300H__) || defined(__H8300S__) || defined(__H8300SX__)
  2.2395 +     ACC_COMPILE_TIME_ASSERT_HEADER(ACC_WORDSIZE == 4)
  2.2396 +#    if defined(__NORMAL_MODE__)
  2.2397 +#      define ACC_SIZEOF_VOID_P     2
  2.2398 +#    else
  2.2399 +#      define ACC_SIZEOF_VOID_P     4
  2.2400 +#    endif
  2.2401 +#  else
  2.2402 +     ACC_COMPILE_TIME_ASSERT_HEADER(ACC_WORDSIZE == 2)
  2.2403 +#    define ACC_SIZEOF_VOID_P       2
  2.2404 +#  endif
  2.2405 +#  if (ACC_CC_GNUC && (ACC_CC_GNUC < 0x040000ul)) && (ACC_SIZEOF_INT == 4)
  2.2406 +#    define ACC_SIZEOF_SIZE_T       ACC_SIZEOF_INT
  2.2407 +#    define ACC_SIZEOF_PTRDIFF_T    ACC_SIZEOF_INT
  2.2408 +#  endif
  2.2409 +#elif (ACC_ARCH_I086)
  2.2410 +#  if (ACC_MM_TINY || ACC_MM_SMALL || ACC_MM_MEDIUM)
  2.2411 +#    define ACC_SIZEOF_VOID_P       2
  2.2412 +#  elif (ACC_MM_COMPACT || ACC_MM_LARGE || ACC_MM_HUGE)
  2.2413 +#    define ACC_SIZEOF_VOID_P       4
  2.2414 +#  else
  2.2415 +#    error "invalid ACC_ARCH_I086 memory model"
  2.2416 +#  endif
  2.2417 +#elif (ACC_ARCH_M16C)
  2.2418 +#  if defined(__m32c_cpu__) || defined(__m32cm_cpu__)
  2.2419 +#    define ACC_SIZEOF_VOID_P       4
  2.2420 +#  else
  2.2421 +#    define ACC_SIZEOF_VOID_P       2
  2.2422 +#  endif
  2.2423 +#elif (ACC_ARCH_SPU)
  2.2424 +#  define ACC_SIZEOF_VOID_P         4
  2.2425 +#elif (ACC_ARCH_Z80)
  2.2426 +#  define ACC_SIZEOF_VOID_P         2
  2.2427 +#elif (ACC_SIZEOF_LONG == 8) && ((defined(__mips__) && defined(__R5900__)) || defined(__MIPS_PSX2__))
  2.2428 +#  define ACC_SIZEOF_VOID_P         4
  2.2429 +#elif (ACC_OS_OS400 || defined(__OS400__))
  2.2430 +#  if defined(__LLP64_IFC__)
  2.2431 +#    define ACC_SIZEOF_VOID_P       8
  2.2432 +#    define ACC_SIZEOF_SIZE_T       ACC_SIZEOF_LONG
  2.2433 +#    define ACC_SIZEOF_PTRDIFF_T    ACC_SIZEOF_LONG
  2.2434 +#  else
  2.2435 +#    define ACC_SIZEOF_VOID_P       16
  2.2436 +#    define ACC_SIZEOF_SIZE_T       ACC_SIZEOF_LONG
  2.2437 +#    define ACC_SIZEOF_PTRDIFF_T    ACC_SIZEOF_LONG
  2.2438 +#  endif
  2.2439 +#elif (defined(__vms) || defined(__VMS)) && (__INITIAL_POINTER_SIZE+0 == 64)
  2.2440 +#  define ACC_SIZEOF_VOID_P         8
  2.2441 +#  define ACC_SIZEOF_SIZE_T         ACC_SIZEOF_LONG
  2.2442 +#  define ACC_SIZEOF_PTRDIFF_T      ACC_SIZEOF_LONG
  2.2443 +#endif
  2.2444 +#endif
  2.2445 +#if !defined(ACC_SIZEOF_VOID_P)
  2.2446 +#  define ACC_SIZEOF_VOID_P         ACC_SIZEOF_LONG
  2.2447 +#endif
  2.2448 +ACC_COMPILE_TIME_ASSERT_HEADER(ACC_SIZEOF_VOID_P == sizeof(void *))
  2.2449 +#if !defined(ACC_SIZEOF_SIZE_T)
  2.2450 +#if (ACC_ARCH_I086 || ACC_ARCH_M16C)
  2.2451 +#  define ACC_SIZEOF_SIZE_T         2
  2.2452 +#endif
  2.2453 +#endif
  2.2454 +#if !defined(ACC_SIZEOF_SIZE_T)
  2.2455 +#  define ACC_SIZEOF_SIZE_T         ACC_SIZEOF_VOID_P
  2.2456 +#endif
  2.2457 +#if defined(offsetof)
  2.2458 +ACC_COMPILE_TIME_ASSERT_HEADER(ACC_SIZEOF_SIZE_T == sizeof(size_t))
  2.2459 +#endif
  2.2460 +#if !defined(ACC_SIZEOF_PTRDIFF_T)
  2.2461 +#if (ACC_ARCH_I086)
  2.2462 +#  if (ACC_MM_TINY || ACC_MM_SMALL || ACC_MM_MEDIUM || ACC_MM_HUGE)
  2.2463 +#    define ACC_SIZEOF_PTRDIFF_T    ACC_SIZEOF_VOID_P
  2.2464 +#  elif (ACC_MM_COMPACT || ACC_MM_LARGE)
  2.2465 +#    if (ACC_CC_BORLANDC || ACC_CC_TURBOC)
  2.2466 +#      define ACC_SIZEOF_PTRDIFF_T  4
  2.2467 +#    else
  2.2468 +#      define ACC_SIZEOF_PTRDIFF_T  2
  2.2469 +#    endif
  2.2470 +#  else
  2.2471 +#    error "invalid ACC_ARCH_I086 memory model"
  2.2472 +#  endif
  2.2473 +#endif
  2.2474 +#endif
  2.2475 +#if !defined(ACC_SIZEOF_PTRDIFF_T)
  2.2476 +#  define ACC_SIZEOF_PTRDIFF_T      ACC_SIZEOF_SIZE_T
  2.2477 +#endif
  2.2478 +#if defined(offsetof)
  2.2479 +ACC_COMPILE_TIME_ASSERT_HEADER(ACC_SIZEOF_PTRDIFF_T == sizeof(ptrdiff_t))
  2.2480 +#endif
  2.2481 +#if !defined(ACC_WORDSIZE)
  2.2482 +#  define ACC_WORDSIZE              ACC_SIZEOF_VOID_P
  2.2483 +#endif
  2.2484 +#if (ACC_ABI_NEUTRAL_ENDIAN)
  2.2485 +#  undef ACC_ABI_BIG_ENDIAN
  2.2486 +#  undef ACC_ABI_LITTLE_ENDIAN
  2.2487 +#elif !(ACC_ABI_BIG_ENDIAN) && !(ACC_ABI_LITTLE_ENDIAN)
  2.2488 +#if (ACC_ARCH_ALPHA) && (ACC_ARCH_CRAY_MPP)
  2.2489 +#  define ACC_ABI_BIG_ENDIAN        1
  2.2490 +#elif (ACC_ARCH_IA64) && (ACC_OS_POSIX_LINUX || ACC_OS_WIN64)
  2.2491 +#  define ACC_ABI_LITTLE_ENDIAN     1
  2.2492 +#elif (ACC_ARCH_ALPHA || ACC_ARCH_AMD64 || ACC_ARCH_BLACKFIN || ACC_ARCH_CRIS || ACC_ARCH_I086 || ACC_ARCH_I386 || ACC_ARCH_MSP430)
  2.2493 +#  define ACC_ABI_LITTLE_ENDIAN     1
  2.2494 +#elif (ACC_ARCH_AVR32 || ACC_ARCH_M68K || ACC_ARCH_S390 || ACC_ARCH_SPU)
  2.2495 +#  define ACC_ABI_BIG_ENDIAN        1
  2.2496 +#elif 1 && defined(__IAR_SYSTEMS_ICC__) && defined(__LITTLE_ENDIAN__)
  2.2497 +#  if (__LITTLE_ENDIAN__ == 1)
  2.2498 +#    define ACC_ABI_LITTLE_ENDIAN   1
  2.2499 +#  else
  2.2500 +#    define ACC_ABI_BIG_ENDIAN      1
  2.2501 +#  endif
  2.2502 +#elif 1 && defined(__BIG_ENDIAN__) && !defined(__LITTLE_ENDIAN__)
  2.2503 +#  define ACC_ABI_BIG_ENDIAN        1
  2.2504 +#elif 1 && defined(__LITTLE_ENDIAN__) && !defined(__BIG_ENDIAN__)
  2.2505 +#  define ACC_ABI_LITTLE_ENDIAN     1
  2.2506 +#elif 1 && (ACC_ARCH_ARM) && defined(__ARM_BIG_ENDIAN) && ((__ARM_BIG_ENDIAN)+0)
  2.2507 +#  define ACC_ABI_BIG_ENDIAN        1
  2.2508 +#elif 1 && (ACC_ARCH_ARM) && defined(__ARMEB__) && !defined(__ARMEL__)
  2.2509 +#  define ACC_ABI_BIG_ENDIAN        1
  2.2510 +#elif 1 && (ACC_ARCH_ARM) && defined(__ARMEL__) && !defined(__ARMEB__)
  2.2511 +#  define ACC_ABI_LITTLE_ENDIAN     1
  2.2512 +#elif 1 && (ACC_ARCH_ARM && ACC_CC_ARMCC_ARMCC)
  2.2513 +#  if defined(__BIG_ENDIAN) && defined(__LITTLE_ENDIAN)
  2.2514 +#    error "unexpected configuration - check your compiler defines"
  2.2515 +#  elif defined(__BIG_ENDIAN)
  2.2516 +#    define ACC_ABI_BIG_ENDIAN      1
  2.2517 +#  else
  2.2518 +#    define ACC_ABI_LITTLE_ENDIAN   1
  2.2519 +#  endif
  2.2520 +#  define ACC_ABI_LITTLE_ENDIAN     1
  2.2521 +#elif 1 && (ACC_ARCH_ARM64) && defined(__ARM_BIG_ENDIAN) && ((__ARM_BIG_ENDIAN)+0)
  2.2522 +#  define ACC_ABI_BIG_ENDIAN        1
  2.2523 +#elif 1 && (ACC_ARCH_ARM64) && defined(__AARCH64EB__) && !defined(__AARCH64EL__)
  2.2524 +#  define ACC_ABI_BIG_ENDIAN        1
  2.2525 +#elif 1 && (ACC_ARCH_ARM64) && defined(__AARCH64EL__) && !defined(__AARCH64EB__)
  2.2526 +#  define ACC_ABI_LITTLE_ENDIAN     1
  2.2527 +#elif 1 && (ACC_ARCH_MIPS) && defined(__MIPSEB__) && !defined(__MIPSEL__)
  2.2528 +#  define ACC_ABI_BIG_ENDIAN        1
  2.2529 +#elif 1 && (ACC_ARCH_MIPS) && defined(__MIPSEL__) && !defined(__MIPSEB__)
  2.2530 +#  define ACC_ABI_LITTLE_ENDIAN     1
  2.2531 +#endif
  2.2532 +#endif
  2.2533 +#if (ACC_ABI_BIG_ENDIAN) && (ACC_ABI_LITTLE_ENDIAN)
  2.2534 +#  error "unexpected configuration - check your compiler defines"
  2.2535 +#endif
  2.2536 +#if (ACC_ABI_BIG_ENDIAN)
  2.2537 +#  define ACC_INFO_ABI_ENDIAN       "be"
  2.2538 +#elif (ACC_ABI_LITTLE_ENDIAN)
  2.2539 +#  define ACC_INFO_ABI_ENDIAN       "le"
  2.2540 +#elif (ACC_ABI_NEUTRAL_ENDIAN)
  2.2541 +#  define ACC_INFO_ABI_ENDIAN       "neutral"
  2.2542 +#endif
  2.2543 +#if (ACC_SIZEOF_INT == 1 && ACC_SIZEOF_LONG == 2 && ACC_SIZEOF_VOID_P == 2)
  2.2544 +#  define ACC_ABI_I8LP16         1
  2.2545 +#  define ACC_INFO_ABI_PM       "i8lp16"
  2.2546 +#elif (ACC_SIZEOF_INT == 2 && ACC_SIZEOF_LONG == 2 && ACC_SIZEOF_VOID_P == 2)
  2.2547 +#  define ACC_ABI_ILP16         1
  2.2548 +#  define ACC_INFO_ABI_PM       "ilp16"
  2.2549 +#elif (ACC_SIZEOF_INT == 2 && ACC_SIZEOF_LONG == 4 && ACC_SIZEOF_VOID_P == 4)
  2.2550 +#  define ACC_ABI_LP32          1
  2.2551 +#  define ACC_INFO_ABI_PM       "lp32"
  2.2552 +#elif (ACC_SIZEOF_INT == 4 && ACC_SIZEOF_LONG == 4 && ACC_SIZEOF_VOID_P == 4)
  2.2553 +#  define ACC_ABI_ILP32         1
  2.2554 +#  define ACC_INFO_ABI_PM       "ilp32"
  2.2555 +#elif (ACC_SIZEOF_INT == 4 && ACC_SIZEOF_LONG == 4 && ACC_SIZEOF_VOID_P == 8 && ACC_SIZEOF_SIZE_T == 8)
  2.2556 +#  define ACC_ABI_LLP64         1
  2.2557 +#  define ACC_INFO_ABI_PM       "llp64"
  2.2558 +#elif (ACC_SIZEOF_INT == 4 && ACC_SIZEOF_LONG == 8 && ACC_SIZEOF_VOID_P == 8)
  2.2559 +#  define ACC_ABI_LP64          1
  2.2560 +#  define ACC_INFO_ABI_PM       "lp64"
  2.2561 +#elif (ACC_SIZEOF_INT == 8 && ACC_SIZEOF_LONG == 8 && ACC_SIZEOF_VOID_P == 8)
  2.2562 +#  define ACC_ABI_ILP64         1
  2.2563 +#  define ACC_INFO_ABI_PM       "ilp64"
  2.2564 +#elif (ACC_SIZEOF_INT == 4 && ACC_SIZEOF_LONG == 8 && ACC_SIZEOF_VOID_P == 4)
  2.2565 +#  define ACC_ABI_IP32L64       1
  2.2566 +#  define ACC_INFO_ABI_PM       "ip32l64"
  2.2567 +#endif
  2.2568 +#if (ACC_SIZEOF_INT == 4 && ACC_SIZEOF_VOID_P == 4 && ACC_WORDSIZE == 8)
  2.2569 +#  define ACC_ABI_IP32W64       1
  2.2570 +#  ifndef ACC_INFO_ABI_PM
  2.2571 +#  define ACC_INFO_ABI_PM       "ip32w64"
  2.2572 +#  endif
  2.2573 +#endif
  2.2574 +#if 0
  2.2575 +#elif !defined(__ACC_LIBC_OVERRIDE)
  2.2576 +#if (ACC_LIBC_NAKED)
  2.2577 +#  define ACC_INFO_LIBC         "naked"
  2.2578 +#elif (ACC_LIBC_FREESTANDING)
  2.2579 +#  define ACC_INFO_LIBC         "freestanding"
  2.2580 +#elif (ACC_LIBC_MOSTLY_FREESTANDING)
  2.2581 +#  define ACC_INFO_LIBC         "mfreestanding"
  2.2582 +#elif (ACC_LIBC_ISOC90)
  2.2583 +#  define ACC_INFO_LIBC         "isoc90"
  2.2584 +#elif (ACC_LIBC_ISOC99)
  2.2585 +#  define ACC_INFO_LIBC         "isoc99"
  2.2586 +#elif (ACC_CC_ARMCC_ARMCC) && defined(__ARMCLIB_VERSION)
  2.2587 +#  define ACC_LIBC_ISOC90       1
  2.2588 +#  define ACC_INFO_LIBC         "isoc90"
  2.2589 +#elif defined(__dietlibc__)
  2.2590 +#  define ACC_LIBC_DIETLIBC     1
  2.2591 +#  define ACC_INFO_LIBC         "dietlibc"
  2.2592 +#elif defined(_NEWLIB_VERSION)
  2.2593 +#  define ACC_LIBC_NEWLIB       1
  2.2594 +#  define ACC_INFO_LIBC         "newlib"
  2.2595 +#elif defined(__UCLIBC__) && defined(__UCLIBC_MAJOR__) && defined(__UCLIBC_MINOR__)
  2.2596 +#  if defined(__UCLIBC_SUBLEVEL__)
  2.2597 +#    define ACC_LIBC_UCLIBC     (__UCLIBC_MAJOR__ * 0x10000L + (__UCLIBC_MINOR__-0) * 0x100 + (__UCLIBC_SUBLEVEL__-0))
  2.2598 +#  else
  2.2599 +#    define ACC_LIBC_UCLIBC     0x00090bL
  2.2600 +#  endif
  2.2601 +#  define ACC_INFO_LIBC         "uc" "libc"
  2.2602 +#elif defined(__GLIBC__) && defined(__GLIBC_MINOR__)
  2.2603 +#  define ACC_LIBC_GLIBC        (__GLIBC__ * 0x10000L + (__GLIBC_MINOR__-0) * 0x100)
  2.2604 +#  define ACC_INFO_LIBC         "glibc"
  2.2605 +#elif (ACC_CC_MWERKS) && defined(__MSL__)
  2.2606 +#  define ACC_LIBC_MSL          __MSL__
  2.2607 +#  define ACC_INFO_LIBC         "msl"
  2.2608 +#elif 1 && defined(__IAR_SYSTEMS_ICC__)
  2.2609 +#  define ACC_LIBC_ISOC90       1
  2.2610 +#  define ACC_INFO_LIBC         "isoc90"
  2.2611 +#else
  2.2612 +#  define ACC_LIBC_DEFAULT      1
  2.2613 +#  define ACC_INFO_LIBC         "default"
  2.2614 +#endif
  2.2615 +#endif
  2.2616 +#if (ACC_ARCH_I386 && (ACC_OS_DOS32 || ACC_OS_WIN32) && (ACC_CC_DMC || ACC_CC_INTELC || ACC_CC_MSC || ACC_CC_PELLESC))
  2.2617 +#  define ACC_ASM_SYNTAX_MSC 1
  2.2618 +#elif (ACC_OS_WIN64 && (ACC_CC_DMC || ACC_CC_INTELC || ACC_CC_MSC || ACC_CC_PELLESC))
  2.2619 +#elif (ACC_ARCH_I386 && ACC_CC_GNUC && (ACC_CC_GNUC == 0x011f00ul))
  2.2620 +#elif (ACC_ARCH_I386 && (ACC_CC_CLANG || ACC_CC_GNUC || ACC_CC_INTELC || ACC_CC_PATHSCALE))
  2.2621 +#  define ACC_ASM_SYNTAX_GNUC 1
  2.2622 +#elif (ACC_ARCH_AMD64 && (ACC_CC_CLANG || ACC_CC_GNUC || ACC_CC_INTELC || ACC_CC_PATHSCALE))
  2.2623 +#  define ACC_ASM_SYNTAX_GNUC 1
  2.2624 +#elif (ACC_CC_GNUC)
  2.2625 +#  define ACC_ASM_SYNTAX_GNUC 1
  2.2626 +#endif
  2.2627 +#if (ACC_ASM_SYNTAX_GNUC)
  2.2628 +#if (ACC_ARCH_I386 && ACC_CC_GNUC && (ACC_CC_GNUC < 0x020000ul))
  2.2629 +#  define __ACC_ASM_CLOBBER                     "ax"
  2.2630 +#  define __ACC_ASM_CLOBBER_LIST_CC             /*empty*/
  2.2631 +#  define __ACC_ASM_CLOBBER_LIST_CC_MEMORY      /*empty*/
  2.2632 +#  define __ACC_ASM_CLOBBER_LIST_EMPTY          /*empty*/
  2.2633 +#elif (ACC_CC_INTELC && (__INTEL_COMPILER < 1000))
  2.2634 +#  define __ACC_ASM_CLOBBER                     "memory"
  2.2635 +#  define __ACC_ASM_CLOBBER_LIST_CC             /*empty*/
  2.2636 +#  define __ACC_ASM_CLOBBER_LIST_CC_MEMORY      : "memory"
  2.2637 +#  define __ACC_ASM_CLOBBER_LIST_EMPTY          /*empty*/
  2.2638 +#else
  2.2639 +#  define __ACC_ASM_CLOBBER                     "cc", "memory"
  2.2640 +#  define __ACC_ASM_CLOBBER_LIST_CC             : "cc"
  2.2641 +#  define __ACC_ASM_CLOBBER_LIST_CC_MEMORY      : "cc", "memory"
  2.2642 +#  define __ACC_ASM_CLOBBER_LIST_EMPTY          /*empty*/
  2.2643 +#endif
  2.2644 +#endif
  2.2645 +#if (ACC_ARCH_ALPHA)
  2.2646 +#  define ACC_OPT_AVOID_UINT_INDEX          1
  2.2647 +#elif (ACC_ARCH_AMD64)
  2.2648 +#  define ACC_OPT_AVOID_INT_INDEX           1
  2.2649 +#  define ACC_OPT_AVOID_UINT_INDEX          1
  2.2650 +#  ifndef ACC_OPT_UNALIGNED16
  2.2651 +#  define ACC_OPT_UNALIGNED16               1
  2.2652 +#  endif
  2.2653 +#  ifndef ACC_OPT_UNALIGNED32
  2.2654 +#  define ACC_OPT_UNALIGNED32               1
  2.2655 +#  endif
  2.2656 +#  ifndef ACC_OPT_UNALIGNED64
  2.2657 +#  define ACC_OPT_UNALIGNED64               1
  2.2658 +#  endif
  2.2659 +#elif (ACC_ARCH_ARM)
  2.2660 +#  if defined(__ARM_FEATURE_UNALIGNED)
  2.2661 +#   if ((__ARM_FEATURE_UNALIGNED)+0)
  2.2662 +#    ifndef ACC_OPT_UNALIGNED16
  2.2663 +#    define ACC_OPT_UNALIGNED16             1
  2.2664 +#    endif
  2.2665 +#    ifndef ACC_OPT_UNALIGNED32
  2.2666 +#    define ACC_OPT_UNALIGNED32             1
  2.2667 +#    endif
  2.2668 +#   endif
  2.2669 +#  elif 1 && (ACC_ARCH_ARM_THUMB2)
  2.2670 +#    ifndef ACC_OPT_UNALIGNED16
  2.2671 +#    define ACC_OPT_UNALIGNED16             1
  2.2672 +#    endif
  2.2673 +#    ifndef ACC_OPT_UNALIGNED32
  2.2674 +#    define ACC_OPT_UNALIGNED32             1
  2.2675 +#    endif
  2.2676 +#  elif 1 && defined(__ARM_ARCH) && ((__ARM_ARCH)+0 >= 7)
  2.2677 +#    ifndef ACC_OPT_UNALIGNED16
  2.2678 +#    define ACC_OPT_UNALIGNED16             1
  2.2679 +#    endif
  2.2680 +#    ifndef ACC_OPT_UNALIGNED32
  2.2681 +#    define ACC_OPT_UNALIGNED32             1
  2.2682 +#    endif
  2.2683 +#  elif 1 && defined(__TARGET_ARCH_ARM) && ((__TARGET_ARCH_ARM)+0 >= 7)
  2.2684 +#    ifndef ACC_OPT_UNALIGNED16
  2.2685 +#    define ACC_OPT_UNALIGNED16             1
  2.2686 +#    endif
  2.2687 +#    ifndef ACC_OPT_UNALIGNED32
  2.2688 +#    define ACC_OPT_UNALIGNED32             1
  2.2689 +#    endif
  2.2690 +#  elif 1 && defined(__TARGET_ARCH_ARM) && ((__TARGET_ARCH_ARM)+0 >= 6) && (defined(__TARGET_PROFILE_A) || defined(__TARGET_PROFILE_R))
  2.2691 +#    ifndef ACC_OPT_UNALIGNED16
  2.2692 +#    define ACC_OPT_UNALIGNED16             1
  2.2693 +#    endif
  2.2694 +#    ifndef ACC_OPT_UNALIGNED32
  2.2695 +#    define ACC_OPT_UNALIGNED32             1
  2.2696 +#    endif
  2.2697 +#  endif
  2.2698 +#elif (ACC_ARCH_ARM64)
  2.2699 +#  ifndef ACC_OPT_UNALIGNED16
  2.2700 +#  define ACC_OPT_UNALIGNED16               1
  2.2701 +#  endif
  2.2702 +#  ifndef ACC_OPT_UNALIGNED32
  2.2703 +#  define ACC_OPT_UNALIGNED32               1
  2.2704 +#  endif
  2.2705 +#  ifndef ACC_OPT_UNALIGNED64
  2.2706 +#  define ACC_OPT_UNALIGNED64               1
  2.2707 +#  endif
  2.2708 +#elif (ACC_ARCH_CRIS)
  2.2709 +#  ifndef ACC_OPT_UNALIGNED16
  2.2710 +#  define ACC_OPT_UNALIGNED16               1
  2.2711 +#  endif
  2.2712 +#  ifndef ACC_OPT_UNALIGNED32
  2.2713 +#  define ACC_OPT_UNALIGNED32               1
  2.2714 +#  endif
  2.2715 +#elif (ACC_ARCH_I386)
  2.2716 +#  ifndef ACC_OPT_UNALIGNED16
  2.2717 +#  define ACC_OPT_UNALIGNED16               1
  2.2718 +#  endif
  2.2719 +#  ifndef ACC_OPT_UNALIGNED32
  2.2720 +#  define ACC_OPT_UNALIGNED32               1
  2.2721 +#  endif
  2.2722 +#elif (ACC_ARCH_IA64)
  2.2723 +#  define ACC_OPT_AVOID_INT_INDEX           1
  2.2724 +#  define ACC_OPT_AVOID_UINT_INDEX          1
  2.2725 +#  define ACC_OPT_PREFER_POSTINC            1
  2.2726 +#elif (ACC_ARCH_M68K)
  2.2727 +#  define ACC_OPT_PREFER_POSTINC            1
  2.2728 +#  define ACC_OPT_PREFER_PREDEC             1
  2.2729 +#  if defined(__mc68020__) && !defined(__mcoldfire__)
  2.2730 +#    ifndef ACC_OPT_UNALIGNED16
  2.2731 +#    define ACC_OPT_UNALIGNED16             1
  2.2732 +#    endif
  2.2733 +#    ifndef ACC_OPT_UNALIGNED32
  2.2734 +#    define ACC_OPT_UNALIGNED32             1
  2.2735 +#    endif
  2.2736 +#  endif
  2.2737 +#elif (ACC_ARCH_MIPS)
  2.2738 +#  define ACC_OPT_AVOID_UINT_INDEX          1
  2.2739 +#elif (ACC_ARCH_POWERPC)
  2.2740 +#  define ACC_OPT_PREFER_PREINC             1
  2.2741 +#  define ACC_OPT_PREFER_PREDEC             1
  2.2742 +#  if (ACC_ABI_BIG_ENDIAN) || (ACC_WORDSIZE == 8)
  2.2743 +#    ifndef ACC_OPT_UNALIGNED16
  2.2744 +#    define ACC_OPT_UNALIGNED16             1
  2.2745 +#    endif
  2.2746 +#    ifndef ACC_OPT_UNALIGNED32
  2.2747 +#    define ACC_OPT_UNALIGNED32             1
  2.2748 +#    endif
  2.2749 +#    if (ACC_WORDSIZE == 8)
  2.2750 +#      ifndef ACC_OPT_UNALIGNED64
  2.2751 +#      define ACC_OPT_UNALIGNED64           1
  2.2752 +#      endif
  2.2753 +#    endif
  2.2754 +#  endif
  2.2755 +#elif (ACC_ARCH_S390)
  2.2756 +#  ifndef ACC_OPT_UNALIGNED16
  2.2757 +#  define ACC_OPT_UNALIGNED16               1
  2.2758 +#  endif
  2.2759 +#  ifndef ACC_OPT_UNALIGNED32
  2.2760 +#  define ACC_OPT_UNALIGNED32               1
  2.2761 +#  endif
  2.2762 +#  if (ACC_WORDSIZE == 8)
  2.2763 +#    ifndef ACC_OPT_UNALIGNED64
  2.2764 +#    define ACC_OPT_UNALIGNED64             1
  2.2765 +#    endif
  2.2766 +#  endif
  2.2767 +#elif (ACC_ARCH_SH)
  2.2768 +#  define ACC_OPT_PREFER_POSTINC            1
  2.2769 +#  define ACC_OPT_PREFER_PREDEC             1
  2.2770 +#endif
  2.2771 +#ifndef ACC_CFG_NO_INLINE_ASM
  2.2772 +#if (ACC_ABI_NEUTRAL_ENDIAN) || (ACC_ARCH_GENERIC)
  2.2773 +#  define ACC_CFG_NO_INLINE_ASM 1
  2.2774 +#elif (ACC_CC_LLVM)
  2.2775 +#  define ACC_CFG_NO_INLINE_ASM 1
  2.2776 +#endif
  2.2777 +#endif
  2.2778 +#if (ACC_CFG_NO_INLINE_ASM)
  2.2779 +#  undef ACC_ASM_SYNTAX_MSC
  2.2780 +#  undef ACC_ASM_SYNTAX_GNUC
  2.2781 +#  undef __ACC_ASM_CLOBBER
  2.2782 +#  undef __ACC_ASM_CLOBBER_LIST_CC
  2.2783 +#  undef __ACC_ASM_CLOBBER_LIST_CC_MEMORY
  2.2784 +#  undef __ACC_ASM_CLOBBER_LIST_EMPTY
  2.2785 +#endif
  2.2786 +#ifndef ACC_CFG_NO_UNALIGNED
  2.2787 +#if (ACC_ABI_NEUTRAL_ENDIAN) || (ACC_ARCH_GENERIC)
  2.2788 +#  define ACC_CFG_NO_UNALIGNED 1
  2.2789 +#endif
  2.2790 +#endif
  2.2791 +#if (ACC_CFG_NO_UNALIGNED)
  2.2792 +#  undef ACC_OPT_UNALIGNED16
  2.2793 +#  undef ACC_OPT_UNALIGNED32
  2.2794 +#  undef ACC_OPT_UNALIGNED64
  2.2795 +#endif
  2.2796 +#if defined(__ACC_INFOSTR_MM)
  2.2797 +#elif (ACC_MM_FLAT) && (defined(__ACC_INFOSTR_PM) || defined(ACC_INFO_ABI_PM))
  2.2798 +#  define __ACC_INFOSTR_MM          ""
  2.2799 +#elif defined(ACC_INFO_MM)
  2.2800 +#  define __ACC_INFOSTR_MM          "." ACC_INFO_MM
  2.2801 +#else
  2.2802 +#  define __ACC_INFOSTR_MM          ""
  2.2803 +#endif
  2.2804 +#if defined(__ACC_INFOSTR_PM)
  2.2805 +#elif defined(ACC_INFO_ABI_PM)
  2.2806 +#  define __ACC_INFOSTR_PM          "." ACC_INFO_ABI_PM
  2.2807 +#else
  2.2808 +#  define __ACC_INFOSTR_PM          ""
  2.2809 +#endif
  2.2810 +#if defined(__ACC_INFOSTR_ENDIAN)
  2.2811 +#elif defined(ACC_INFO_ABI_ENDIAN)
  2.2812 +#  define __ACC_INFOSTR_ENDIAN      "." ACC_INFO_ABI_ENDIAN
  2.2813 +#else
  2.2814 +#  define __ACC_INFOSTR_ENDIAN      ""
  2.2815 +#endif
  2.2816 +#if defined(__ACC_INFOSTR_OSNAME)
  2.2817 +#elif defined(ACC_INFO_OS_CONSOLE)
  2.2818 +#  define __ACC_INFOSTR_OSNAME      ACC_INFO_OS "." ACC_INFO_OS_CONSOLE
  2.2819 +#elif defined(ACC_INFO_OS_POSIX)
  2.2820 +#  define __ACC_INFOSTR_OSNAME      ACC_INFO_OS "." ACC_INFO_OS_POSIX
  2.2821 +#else
  2.2822 +#  define __ACC_INFOSTR_OSNAME      ACC_INFO_OS
  2.2823 +#endif
  2.2824 +#if defined(__ACC_INFOSTR_LIBC)
  2.2825 +#elif defined(ACC_INFO_LIBC)
  2.2826 +#  define __ACC_INFOSTR_LIBC        "." ACC_INFO_LIBC
  2.2827 +#else
  2.2828 +#  define __ACC_INFOSTR_LIBC        ""
  2.2829 +#endif
  2.2830 +#if defined(__ACC_INFOSTR_CCVER)
  2.2831 +#elif defined(ACC_INFO_CCVER)
  2.2832 +#  define __ACC_INFOSTR_CCVER       " " ACC_INFO_CCVER
  2.2833 +#else
  2.2834 +#  define __ACC_INFOSTR_CCVER       ""
  2.2835 +#endif
  2.2836 +#define ACC_INFO_STRING \
  2.2837 +    ACC_INFO_ARCH __ACC_INFOSTR_MM __ACC_INFOSTR_PM __ACC_INFOSTR_ENDIAN \
  2.2838 +    " " __ACC_INFOSTR_OSNAME __ACC_INFOSTR_LIBC " " ACC_INFO_CC __ACC_INFOSTR_CCVER
  2.2839 +#if !(ACC_CFG_SKIP_ACC_TYPES)
  2.2840 +#if (!(ACC_SIZEOF_SHORT+0 > 0 && ACC_SIZEOF_INT+0 > 0 && ACC_SIZEOF_LONG+0 > 0))
  2.2841 +#  error "missing defines for sizes"
  2.2842 +#endif
  2.2843 +#if (!(ACC_SIZEOF_PTRDIFF_T+0 > 0 && ACC_SIZEOF_SIZE_T+0 > 0 && ACC_SIZEOF_VOID_P+0 > 0))
  2.2844 +#  error "missing defines for sizes"
  2.2845 +#endif
  2.2846 +#define ACC_TYPEOF_CHAR             1u
  2.2847 +#define ACC_TYPEOF_SHORT            2u
  2.2848 +#define ACC_TYPEOF_INT              3u
  2.2849 +#define ACC_TYPEOF_LONG             4u
  2.2850 +#define ACC_TYPEOF_LONG_LONG        5u
  2.2851 +#define ACC_TYPEOF___INT8           17u
  2.2852 +#define ACC_TYPEOF___INT16          18u
  2.2853 +#define ACC_TYPEOF___INT32          19u
  2.2854 +#define ACC_TYPEOF___INT64          20u
  2.2855 +#define ACC_TYPEOF___INT128         21u
  2.2856 +#define ACC_TYPEOF___INT256         22u
  2.2857 +#define ACC_TYPEOF___MODE_QI        33u
  2.2858 +#define ACC_TYPEOF___MODE_HI        34u
  2.2859 +#define ACC_TYPEOF___MODE_SI        35u
  2.2860 +#define ACC_TYPEOF___MODE_DI        36u
  2.2861 +#define ACC_TYPEOF___MODE_TI        37u
  2.2862 +#define ACC_TYPEOF_CHAR_P           129u
  2.2863 +#if !defined(acc_llong_t)
  2.2864 +#if (ACC_SIZEOF_LONG_LONG+0 > 0)
  2.2865 +#  if !(ACC_LANG_ASSEMBLER)
  2.2866 +   __acc_gnuc_extension__ typedef long long acc_llong_t__;
  2.2867 +   __acc_gnuc_extension__ typedef unsigned long long acc_ullong_t__;
  2.2868 +#  endif
  2.2869 +#  define acc_llong_t               acc_llong_t__
  2.2870 +#  define acc_ullong_t              acc_ullong_t__
  2.2871 +#endif
  2.2872 +#endif
  2.2873 +#if !defined(acc_int16e_t)
  2.2874 +#if (ACC_CFG_PREFER_TYPEOF_ACC_INT16E_T == ACC_TYPEOF_SHORT) && (ACC_SIZEOF_SHORT != 2)
  2.2875 +#  undef ACC_CFG_PREFER_TYPEOF_ACC_INT16E_T
  2.2876 +#endif
  2.2877 +#if (ACC_SIZEOF_LONG == 2) && !(ACC_CFG_PREFER_TYPEOF_ACC_INT16E_T == ACC_TYPEOF_SHORT)
  2.2878 +#  define acc_int16e_t              long
  2.2879 +#  define acc_uint16e_t             unsigned long
  2.2880 +#  define ACC_TYPEOF_ACC_INT16E_T   ACC_TYPEOF_LONG
  2.2881 +#elif (ACC_SIZEOF_INT == 2) && !(ACC_CFG_PREFER_TYPEOF_ACC_INT16E_T == ACC_TYPEOF_SHORT)
  2.2882 +#  define acc_int16e_t              int
  2.2883 +#  define acc_uint16e_t             unsigned int
  2.2884 +#  define ACC_TYPEOF_ACC_INT16E_T   ACC_TYPEOF_INT
  2.2885 +#elif (ACC_SIZEOF_SHORT == 2)
  2.2886 +#  define acc_int16e_t              short int
  2.2887 +#  define acc_uint16e_t             unsigned short int
  2.2888 +#  define ACC_TYPEOF_ACC_INT16E_T   ACC_TYPEOF_SHORT
  2.2889 +#elif 1 && !(ACC_CFG_TYPE_NO_MODE_HI) && (ACC_CC_CLANG || (ACC_CC_GNUC >= 0x025f00ul) || ACC_CC_LLVM)
  2.2890 +#  if !(ACC_LANG_ASSEMBLER)
  2.2891 +   typedef int acc_int16e_hi_t__ __attribute__((__mode__(__HI__)));
  2.2892 +   typedef unsigned int acc_uint16e_hi_t__ __attribute__((__mode__(__HI__)));
  2.2893 +#  endif
  2.2894 +#  define acc_int16e_t              acc_int16e_hi_t__
  2.2895 +#  define acc_uint16e_t             acc_uint16e_hi_t__
  2.2896 +#  define ACC_TYPEOF_ACC_INT16E_T   ACC_TYPEOF___MODE_HI
  2.2897 +#elif (ACC_SIZEOF___INT16 == 2)
  2.2898 +#  define acc_int16e_t              __int16
  2.2899 +#  define acc_uint16e_t             unsigned __int16
  2.2900 +#  define ACC_TYPEOF_ACC_INT16E_T   ACC_TYPEOF___INT16
  2.2901 +#else
  2.2902 +#endif
  2.2903 +#endif
  2.2904 +#if defined(acc_int16e_t)
  2.2905 +#  define ACC_SIZEOF_ACC_INT16E_T   2
  2.2906 +   ACC_COMPILE_TIME_ASSERT_HEADER(sizeof(acc_int16e_t) == 2)
  2.2907 +   ACC_COMPILE_TIME_ASSERT_HEADER(sizeof(acc_int16e_t) == ACC_SIZEOF_ACC_INT16E_T)
  2.2908 +#endif
  2.2909 +#if !defined(acc_int32e_t)
  2.2910 +#if (ACC_CFG_PREFER_TYPEOF_ACC_INT32E_T == ACC_TYPEOF_INT) && (ACC_SIZEOF_INT != 4)
  2.2911 +#  undef ACC_CFG_PREFER_TYPEOF_ACC_INT32E_T
  2.2912 +#endif
  2.2913 +#if (ACC_SIZEOF_LONG == 4) && !(ACC_CFG_PREFER_TYPEOF_ACC_INT32E_T == ACC_TYPEOF_INT)
  2.2914 +#  define acc_int32e_t              long int
  2.2915 +#  define acc_uint32e_t             unsigned long int
  2.2916 +#  define ACC_TYPEOF_ACC_INT32E_T   ACC_TYPEOF_LONG
  2.2917 +#elif (ACC_SIZEOF_INT == 4)
  2.2918 +#  define acc_int32e_t              int
  2.2919 +#  define acc_uint32e_t             unsigned int
  2.2920 +#  define ACC_TYPEOF_ACC_INT32E_T   ACC_TYPEOF_INT
  2.2921 +#elif (ACC_SIZEOF_SHORT == 4)
  2.2922 +#  define acc_int32e_t              short int
  2.2923 +#  define acc_uint32e_t             unsigned short int
  2.2924 +#  define ACC_TYPEOF_ACC_INT32E_T   ACC_TYPEOF_SHORT
  2.2925 +#elif (ACC_SIZEOF_LONG_LONG == 4)
  2.2926 +#  define acc_int32e_t              acc_llong_t
  2.2927 +#  define acc_uint32e_t             acc_ullong_t
  2.2928 +#  define ACC_TYPEOF_ACC_INT32E_T   ACC_TYPEOF_LONG_LONG
  2.2929 +#elif 1 && !(ACC_CFG_TYPE_NO_MODE_SI) && (ACC_CC_CLANG || (ACC_CC_GNUC >= 0x025f00ul) || ACC_CC_LLVM) && (__INT_MAX__+0 > 2147483647L)
  2.2930 +#  if !(ACC_LANG_ASSEMBLER)
  2.2931 +   typedef int acc_int32e_si_t__ __attribute__((__mode__(__SI__)));
  2.2932 +   typedef unsigned int acc_uint32e_si_t__ __attribute__((__mode__(__SI__)));
  2.2933 +#  endif
  2.2934 +#  define acc_int32e_t              acc_int32e_si_t__
  2.2935 +#  define acc_uint32e_t             acc_uint32e_si_t__
  2.2936 +#  define ACC_TYPEOF_ACC_INT32E_T   ACC_TYPEOF___MODE_SI
  2.2937 +#elif 1 && !(ACC_CFG_TYPE_NO_MODE_SI) && (ACC_CC_GNUC >= 0x025f00ul) && defined(__AVR__) && (__LONG_MAX__+0 == 32767L)
  2.2938 +#  if !(ACC_LANG_ASSEMBLER)
  2.2939 +   typedef int acc_int32e_si_t__ __attribute__((__mode__(__SI__)));
  2.2940 +   typedef unsigned int acc_uint32e_si_t__ __attribute__((__mode__(__SI__)));
  2.2941 +#  endif
  2.2942 +#  define acc_int32e_t              acc_int32e_si_t__
  2.2943 +#  define acc_uint32e_t             acc_uint32e_si_t__
  2.2944 +#  define ACC_INT32_C(c)            (c##LL)
  2.2945 +#  define ACC_UINT32_C(c)           (c##ULL)
  2.2946 +#  define ACC_TYPEOF_ACC_INT32E_T   ACC_TYPEOF___MODE_SI
  2.2947 +#elif (ACC_SIZEOF___INT32 == 4)
  2.2948 +#  define acc_int32e_t              __int32
  2.2949 +#  define acc_uint32e_t             unsigned __int32
  2.2950 +#  define ACC_TYPEOF_ACC_INT32E_T   ACC_TYPEOF___INT32
  2.2951 +#else
  2.2952 +#endif
  2.2953 +#endif
  2.2954 +#if defined(acc_int32e_t)
  2.2955 +#  define ACC_SIZEOF_ACC_INT32E_T   4
  2.2956 +   ACC_COMPILE_TIME_ASSERT_HEADER(sizeof(acc_int32e_t) == 4)
  2.2957 +   ACC_COMPILE_TIME_ASSERT_HEADER(sizeof(acc_int32e_t) == ACC_SIZEOF_ACC_INT32E_T)
  2.2958 +#endif
  2.2959 +#if !defined(acc_int64e_t)
  2.2960 +#if (ACC_SIZEOF___INT64 == 8)
  2.2961 +#  if (ACC_CC_BORLANDC) && !defined(ACC_CFG_PREFER_TYPEOF_ACC_INT64E_T)
  2.2962 +#    define ACC_CFG_PREFER_TYPEOF_ACC_INT64E_T  ACC_TYPEOF___INT64
  2.2963 +#  endif
  2.2964 +#endif
  2.2965 +#if (ACC_CFG_PREFER_TYPEOF_ACC_INT64E_T == ACC_TYPEOF_LONG_LONG) && (ACC_SIZEOF_LONG_LONG != 8)
  2.2966 +#  undef ACC_CFG_PREFER_TYPEOF_ACC_INT64E_T
  2.2967 +#endif
  2.2968 +#if (ACC_CFG_PREFER_TYPEOF_ACC_INT64E_T == ACC_TYPEOF___INT64) && (ACC_SIZEOF___INT64 != 8)
  2.2969 +#  undef ACC_CFG_PREFER_TYPEOF_ACC_INT64E_T
  2.2970 +#endif
  2.2971 +#if (ACC_SIZEOF_INT == 8) && (ACC_SIZEOF_INT < ACC_SIZEOF_LONG)
  2.2972 +#  define acc_int64e_t              int
  2.2973 +#  define acc_uint64e_t             unsigned int
  2.2974 +#  define ACC_TYPEOF_ACC_INT64E_T   ACC_TYPEOF_INT
  2.2975 +#elif (ACC_SIZEOF_LONG == 8) && !(ACC_CFG_PREFER_TYPEOF_ACC_INT64E_T == ACC_TYPEOF_LONG_LONG) && !(ACC_CFG_PREFER_TYPEOF_ACC_INT64E_T == ACC_TYPEOF___INT64)
  2.2976 +#  define acc_int64e_t              long int
  2.2977 +#  define acc_uint64e_t             unsigned long int
  2.2978 +#  define ACC_TYPEOF_ACC_INT64E_T   ACC_TYPEOF_LONG
  2.2979 +#elif (ACC_SIZEOF_LONG_LONG == 8) && !(ACC_CFG_PREFER_TYPEOF_ACC_INT64E_T == ACC_TYPEOF___INT64)
  2.2980 +#  define acc_int64e_t              acc_llong_t
  2.2981 +#  define acc_uint64e_t             acc_ullong_t
  2.2982 +#  define ACC_TYPEOF_ACC_INT64E_T   ACC_TYPEOF_LONG_LONG
  2.2983 +#  if (ACC_CC_BORLANDC)
  2.2984 +#    define ACC_INT64_C(c)          ((c) + 0ll)
  2.2985 +#    define ACC_UINT64_C(c)         ((c) + 0ull)
  2.2986 +#  elif 0
  2.2987 +#    define ACC_INT64_C(c)          (__acc_gnuc_extension__ (c##LL))
  2.2988 +#    define ACC_UINT64_C(c)         (__acc_gnuc_extension__ (c##ULL))
  2.2989 +#  else
  2.2990 +#    define ACC_INT64_C(c)          (c##LL)
  2.2991 +#    define ACC_UINT64_C(c)         (c##ULL)
  2.2992 +#  endif
  2.2993 +#elif (ACC_SIZEOF___INT64 == 8)
  2.2994 +#  define acc_int64e_t              __int64
  2.2995 +#  define acc_uint64e_t             unsigned __int64
  2.2996 +#  define ACC_TYPEOF_ACC_INT64E_T   ACC_TYPEOF___INT64
  2.2997 +#  if (ACC_CC_BORLANDC)
  2.2998 +#    define ACC_INT64_C(c)          ((c) + 0i64)
  2.2999 +#    define ACC_UINT64_C(c)         ((c) + 0ui64)
  2.3000 +#  else
  2.3001 +#    define ACC_INT64_C(c)          (c##i64)
  2.3002 +#    define ACC_UINT64_C(c)         (c##ui64)
  2.3003 +#  endif
  2.3004 +#else
  2.3005 +#endif
  2.3006 +#endif
  2.3007 +#if defined(acc_int64e_t)
  2.3008 +#  define ACC_SIZEOF_ACC_INT64E_T   8
  2.3009 +   ACC_COMPILE_TIME_ASSERT_HEADER(sizeof(acc_int64e_t) == 8)
  2.3010 +   ACC_COMPILE_TIME_ASSERT_HEADER(sizeof(acc_int64e_t) == ACC_SIZEOF_ACC_INT64E_T)
  2.3011 +#endif
  2.3012 +#if !defined(acc_int32l_t)
  2.3013 +#if defined(acc_int32e_t)
  2.3014 +#  define acc_int32l_t              acc_int32e_t
  2.3015 +#  define acc_uint32l_t             acc_uint32e_t
  2.3016 +#  define ACC_SIZEOF_ACC_INT32L_T   ACC_SIZEOF_ACC_INT32E_T
  2.3017 +#  define ACC_TYPEOF_ACC_INT32L_T   ACC_TYPEOF_ACC_INT32E_T
  2.3018 +#elif (ACC_SIZEOF_INT >= 4) && (ACC_SIZEOF_INT < ACC_SIZEOF_LONG)
  2.3019 +#  define acc_int32l_t              int
  2.3020 +#  define acc_uint32l_t             unsigned int
  2.3021 +#  define ACC_SIZEOF_ACC_INT32L_T   ACC_SIZEOF_INT
  2.3022 +#  define ACC_TYPEOF_ACC_INT32L_T   ACC_SIZEOF_INT
  2.3023 +#elif (ACC_SIZEOF_LONG >= 4)
  2.3024 +#  define acc_int32l_t              long int
  2.3025 +#  define acc_uint32l_t             unsigned long int
  2.3026 +#  define ACC_SIZEOF_ACC_INT32L_T   ACC_SIZEOF_LONG
  2.3027 +#  define ACC_TYPEOF_ACC_INT32L_T   ACC_SIZEOF_LONG
  2.3028 +#else
  2.3029 +#  error "acc_int32l_t"
  2.3030 +#endif
  2.3031 +#endif
  2.3032 +#if 1
  2.3033 +   ACC_COMPILE_TIME_ASSERT_HEADER(sizeof(acc_int32l_t) >= 4)
  2.3034 +   ACC_COMPILE_TIME_ASSERT_HEADER(sizeof(acc_int32l_t) == ACC_SIZEOF_ACC_INT32L_T)
  2.3035 +#endif
  2.3036 +#if !defined(acc_int64l_t)
  2.3037 +#if defined(acc_int64e_t)
  2.3038 +#  define acc_int64l_t              acc_int64e_t
  2.3039 +#  define acc_uint64l_t             acc_uint64e_t
  2.3040 +#  define ACC_SIZEOF_ACC_INT64L_T   ACC_SIZEOF_ACC_INT64E_T
  2.3041 +#  define ACC_TYPEOF_ACC_INT64L_T   ACC_TYPEOF_ACC_INT64E_T
  2.3042 +#else
  2.3043 +#endif
  2.3044 +#endif
  2.3045 +#if defined(acc_int64l_t)
  2.3046 +   ACC_COMPILE_TIME_ASSERT_HEADER(sizeof(acc_int64l_t) >= 8)
  2.3047 +   ACC_COMPILE_TIME_ASSERT_HEADER(sizeof(acc_int64l_t) == ACC_SIZEOF_ACC_INT64L_T)
  2.3048 +#endif
  2.3049 +#if !defined(acc_int32f_t)
  2.3050 +#if (ACC_SIZEOF_SIZE_T >= 8)
  2.3051 +#  define acc_int32f_t              acc_int64l_t
  2.3052 +#  define acc_uint32f_t             acc_uint64l_t
  2.3053 +#  define ACC_SIZEOF_ACC_INT32F_T   ACC_SIZEOF_ACC_INT64L_T
  2.3054 +#  define ACC_TYPEOF_ACC_INT32F_T   ACC_TYPEOF_ACC_INT64L_T
  2.3055 +#else
  2.3056 +#  define acc_int32f_t              acc_int32l_t
  2.3057 +#  define acc_uint32f_t             acc_uint32l_t
  2.3058 +#  define ACC_SIZEOF_ACC_INT32F_T   ACC_SIZEOF_ACC_INT32L_T
  2.3059 +#  define ACC_TYPEOF_ACC_INT32F_T   ACC_TYPEOF_ACC_INT32L_T
  2.3060 +#endif
  2.3061 +#endif
  2.3062 +#if 1
  2.3063 +   ACC_COMPILE_TIME_ASSERT_HEADER(sizeof(acc_int32f_t) >= 4)
  2.3064 +   ACC_COMPILE_TIME_ASSERT_HEADER(sizeof(acc_int32f_t) == ACC_SIZEOF_ACC_INT32F_T)
  2.3065 +#endif
  2.3066 +#if !defined(acc_int64f_t)
  2.3067 +#if defined(acc_int64l_t)
  2.3068 +#  define acc_int64f_t              acc_int64l_t
  2.3069 +#  define acc_uint64f_t             acc_uint64l_t
  2.3070 +#  define ACC_SIZEOF_ACC_INT64F_T   ACC_SIZEOF_ACC_INT64L_T
  2.3071 +#  define ACC_TYPEOF_ACC_INT64F_T   ACC_TYPEOF_ACC_INT64L_T
  2.3072 +#else
  2.3073 +#endif
  2.3074 +#endif
  2.3075 +#if defined(acc_int64f_t)
  2.3076 +   ACC_COMPILE_TIME_ASSERT_HEADER(sizeof(acc_int64f_t) >= 8)
  2.3077 +   ACC_COMPILE_TIME_ASSERT_HEADER(sizeof(acc_int64f_t) == ACC_SIZEOF_ACC_INT64F_T)
  2.3078 +#endif
  2.3079 +#if !defined(acc_intptr_t)
  2.3080 +#if 1 && (ACC_OS_OS400 && (ACC_SIZEOF_VOID_P == 16))
  2.3081 +#  define __ACC_INTPTR_T_IS_POINTER 1
  2.3082 +#  if !(ACC_LANG_ASSEMBLER)
  2.3083 +   typedef char *                   acc_intptr_t;
  2.3084 +   typedef char *                   acc_uintptr_t;
  2.3085 +#  endif
  2.3086 +#  define acc_intptr_t              acc_intptr_t
  2.3087 +#  define acc_uintptr_t             acc_uintptr_t
  2.3088 +#  define ACC_SIZEOF_ACC_INTPTR_T   ACC_SIZEOF_VOID_P
  2.3089 +#  define ACC_TYPEOF_ACC_INTPTR_T   ACC_TYPEOF_CHAR_P
  2.3090 +#elif (ACC_CC_MSC && (_MSC_VER >= 1300) && (ACC_SIZEOF_VOID_P == 4) && (ACC_SIZEOF_INT == 4))
  2.3091 +#  if !(ACC_LANG_ASSEMBLER)
  2.3092 +   typedef __w64 int                acc_intptr_t;
  2.3093 +   typedef __w64 unsigned int       acc_uintptr_t;
  2.3094 +#  endif
  2.3095 +#  define acc_intptr_t              acc_intptr_t
  2.3096 +#  define acc_uintptr_t             acc_uintptr_t
  2.3097 +#  define ACC_SIZEOF_ACC_INTPTR_T   ACC_SIZEOF_INT
  2.3098 +#  define ACC_TYPEOF_ACC_INTPTR_T   ACC_TYPEOF_INT
  2.3099 +#elif (ACC_SIZEOF_SHORT == ACC_SIZEOF_VOID_P) && (ACC_SIZEOF_INT > ACC_SIZEOF_VOID_P)
  2.3100 +#  define acc_intptr_t              short
  2.3101 +#  define acc_uintptr_t             unsigned short
  2.3102 +#  define ACC_SIZEOF_ACC_INTPTR_T   ACC_SIZEOF_SHORT
  2.3103 +#  define ACC_TYPEOF_ACC_INTPTR_T   ACC_TYPEOF_SHORT
  2.3104 +#elif (ACC_SIZEOF_INT >= ACC_SIZEOF_VOID_P) && (ACC_SIZEOF_INT < ACC_SIZEOF_LONG)
  2.3105 +#  define acc_intptr_t              int
  2.3106 +#  define acc_uintptr_t             unsigned int
  2.3107 +#  define ACC_SIZEOF_ACC_INTPTR_T   ACC_SIZEOF_INT
  2.3108 +#  define ACC_TYPEOF_ACC_INTPTR_T   ACC_TYPEOF_INT
  2.3109 +#elif (ACC_SIZEOF_LONG >= ACC_SIZEOF_VOID_P)
  2.3110 +#  define acc_intptr_t              long
  2.3111 +#  define acc_uintptr_t             unsigned long
  2.3112 +#  define ACC_SIZEOF_ACC_INTPTR_T   ACC_SIZEOF_LONG
  2.3113 +#  define ACC_TYPEOF_ACC_INTPTR_T   ACC_TYPEOF_LONG
  2.3114 +#elif (ACC_SIZEOF_ACC_INT64L_T >= ACC_SIZEOF_VOID_P)
  2.3115 +#  define acc_intptr_t              acc_int64l_t
  2.3116 +#  define acc_uintptr_t             acc_uint64l_t
  2.3117 +#  define ACC_SIZEOF_ACC_INTPTR_T   ACC_SIZEOF_ACC_INT64L_T
  2.3118 +#  define ACC_TYPEOF_ACC_INTPTR_T   ACC_TYPEOF_ACC_INT64L_T
  2.3119 +#else
  2.3120 +#  error "acc_intptr_t"
  2.3121 +#endif
  2.3122 +#endif
  2.3123 +#if 1
  2.3124 +    ACC_COMPILE_TIME_ASSERT_HEADER(sizeof(acc_intptr_t) >= sizeof(void *))
  2.3125 +    ACC_COMPILE_TIME_ASSERT_HEADER(sizeof(acc_intptr_t) == sizeof(acc_uintptr_t))
  2.3126 +#endif
  2.3127 +#if !defined(acc_word_t)
  2.3128 +#if defined(ACC_WORDSIZE) && (ACC_WORDSIZE+0 > 0)
  2.3129 +#if (ACC_WORDSIZE == ACC_SIZEOF_ACC_INTPTR_T) && !(__ACC_INTPTR_T_IS_POINTER)
  2.3130 +#  define acc_word_t                acc_uintptr_t
  2.3131 +#  define acc_sword_t               acc_intptr_t
  2.3132 +#  define ACC_SIZEOF_ACC_WORD_T     ACC_SIZEOF_ACC_INTPTR_T
  2.3133 +#  define ACC_TYPEOF_ACC_WORD_T     ACC_TYPEOF_ACC_INTPTR_T
  2.3134 +#elif (ACC_WORDSIZE == ACC_SIZEOF_LONG)
  2.3135 +#  define acc_word_t                unsigned long
  2.3136 +#  define acc_sword_t               long
  2.3137 +#  define ACC_SIZEOF_ACC_WORD_T     ACC_SIZEOF_LONG
  2.3138 +#  define ACC_TYPEOF_ACC_WORD_T     ACC_TYPEOF_LONG
  2.3139 +#elif (ACC_WORDSIZE == ACC_SIZEOF_INT)
  2.3140 +#  define acc_word_t                unsigned int
  2.3141 +#  define acc_sword_t               int
  2.3142 +#  define ACC_SIZEOF_ACC_WORD_T     ACC_SIZEOF_INT
  2.3143 +#  define ACC_TYPEOF_ACC_WORD_T     ACC_TYPEOF_INT
  2.3144 +#elif (ACC_WORDSIZE == ACC_SIZEOF_SHORT)
  2.3145 +#  define acc_word_t                unsigned short
  2.3146 +#  define acc_sword_t               short
  2.3147 +#  define ACC_SIZEOF_ACC_WORD_T     ACC_SIZEOF_SHORT
  2.3148 +#  define ACC_TYPEOF_ACC_WORD_T     ACC_TYPEOF_SHORT
  2.3149 +#elif (ACC_WORDSIZE == 1)
  2.3150 +#  define acc_word_t                unsigned char
  2.3151 +#  define acc_sword_t               signed char
  2.3152 +#  define ACC_SIZEOF_ACC_WORD_T     1
  2.3153 +#  define ACC_TYPEOF_ACC_WORD_T     ACC_TYPEOF_CHAR
  2.3154 +#elif (ACC_WORDSIZE == ACC_SIZEOF_ACC_INT64L_T)
  2.3155 +#  define acc_word_t                acc_uint64l_t
  2.3156 +#  define acc_sword_t               acc_int64l_t
  2.3157 +#  define ACC_SIZEOF_ACC_WORD_T     ACC_SIZEOF_ACC_INT64L_T
  2.3158 +#  define ACC_TYPEOF_ACC_WORD_T     ACC_SIZEOF_ACC_INT64L_T
  2.3159 +#elif (ACC_ARCH_SPU) && (ACC_CC_GNUC)
  2.3160 +#if 0
  2.3161 +#  if !(ACC_LANG_ASSEMBLER)
  2.3162 +   typedef unsigned acc_word_t  __attribute__((__mode__(__V16QI__)));
  2.3163 +   typedef int      acc_sword_t __attribute__((__mode__(__V16QI__)));
  2.3164 +#  endif
  2.3165 +#  define acc_word_t                acc_word_t
  2.3166 +#  define acc_sword_t               acc_sword_t
  2.3167 +#  define ACC_SIZEOF_ACC_WORD_T     16
  2.3168 +#  define ACC_TYPEOF_ACC_WORD_T     ACC_TYPEOF___MODE_V16QI
  2.3169 +#endif
  2.3170 +#else
  2.3171 +#  error "acc_word_t"
  2.3172 +#endif
  2.3173 +#endif
  2.3174 +#endif
  2.3175 +#if 1 && defined(acc_word_t)
  2.3176 +    ACC_COMPILE_TIME_ASSERT_HEADER(sizeof(acc_word_t)  == ACC_WORDSIZE)
  2.3177 +    ACC_COMPILE_TIME_ASSERT_HEADER(sizeof(acc_sword_t) == ACC_WORDSIZE)
  2.3178 +#endif
  2.3179 +#if 1
  2.3180 +#define acc_int8_t                  signed char
  2.3181 +#define acc_uint8_t                 unsigned char
  2.3182 +#define ACC_SIZEOF_ACC_INT8_T       1
  2.3183 +#define ACC_TYPEOF_ACC_INT8_T       ACC_TYPEOF_CHAR
  2.3184 +ACC_COMPILE_TIME_ASSERT_HEADER(sizeof(acc_int8_t) == 1)
  2.3185 +ACC_COMPILE_TIME_ASSERT_HEADER(sizeof(acc_int8_t) == sizeof(acc_uint8_t))
  2.3186 +#endif
  2.3187 +#if defined(acc_int16e_t)
  2.3188 +#define acc_int16_t                 acc_int16e_t
  2.3189 +#define acc_uint16_t                acc_uint16e_t
  2.3190 +#define ACC_SIZEOF_ACC_INT16_T      ACC_SIZEOF_ACC_INT16E_T
  2.3191 +#define ACC_TYPEOF_ACC_INT16_T      ACC_TYPEOF_ACC_INT16E_T
  2.3192 +ACC_COMPILE_TIME_ASSERT_HEADER(sizeof(acc_int16_t) == 2)
  2.3193 +ACC_COMPILE_TIME_ASSERT_HEADER(sizeof(acc_int16_t) == sizeof(acc_uint16_t))
  2.3194 +#endif
  2.3195 +#if defined(acc_int32e_t)
  2.3196 +#define acc_int32_t                 acc_int32e_t
  2.3197 +#define acc_uint32_t                acc_uint32e_t
  2.3198 +#define ACC_SIZEOF_ACC_INT32_T      ACC_SIZEOF_ACC_INT32E_T
  2.3199 +#define ACC_TYPEOF_ACC_INT32_T      ACC_TYPEOF_ACC_INT32E_T
  2.3200 +ACC_COMPILE_TIME_ASSERT_HEADER(sizeof(acc_int32_t) == 4)
  2.3201 +ACC_COMPILE_TIME_ASSERT_HEADER(sizeof(acc_int32_t) == sizeof(acc_uint32_t))
  2.3202 +#endif
  2.3203 +#if defined(acc_int64e_t)
  2.3204 +#define acc_int64_t                 acc_int64e_t
  2.3205 +#define acc_uint64_t                acc_uint64e_t
  2.3206 +#define ACC_SIZEOF_ACC_INT64_T      ACC_SIZEOF_ACC_INT64E_T
  2.3207 +#define ACC_TYPEOF_ACC_INT64_T      ACC_TYPEOF_ACC_INT64E_T
  2.3208 +ACC_COMPILE_TIME_ASSERT_HEADER(sizeof(acc_int64_t) == 8)
  2.3209 +ACC_COMPILE_TIME_ASSERT_HEADER(sizeof(acc_int64_t) == sizeof(acc_uint64_t))
  2.3210 +#endif
  2.3211 +#if 1
  2.3212 +#define acc_int_least32_t           acc_int32l_t
  2.3213 +#define acc_uint_least32_t          acc_uint32l_t
  2.3214 +#define ACC_SIZEOF_ACC_INT_LEAST32_T ACC_SIZEOF_ACC_INT32L_T
  2.3215 +#define ACC_TYPEOF_ACC_INT_LEAST32_T ACC_TYPEOF_ACC_INT32L_T
  2.3216 +ACC_COMPILE_TIME_ASSERT_HEADER(sizeof(acc_int_least32_t) >= 4)
  2.3217 +ACC_COMPILE_TIME_ASSERT_HEADER(sizeof(acc_int_least32_t) == sizeof(acc_uint_least32_t))
  2.3218 +#endif
  2.3219 +#if defined(acc_int64l_t)
  2.3220 +#define acc_int_least64_t           acc_int64l_t
  2.3221 +#define acc_uint_least64_t          acc_uint64l_t
  2.3222 +#define ACC_SIZEOF_ACC_INT_LEAST64_T ACC_SIZEOF_ACC_INT64L_T
  2.3223 +#define ACC_TYPEOF_ACC_INT_LEAST64_T ACC_TYPEOF_ACC_INT64L_T
  2.3224 +ACC_COMPILE_TIME_ASSERT_HEADER(sizeof(acc_int_least64_t) >= 8)
  2.3225 +ACC_COMPILE_TIME_ASSERT_HEADER(sizeof(acc_int_least64_t) == sizeof(acc_uint_least64_t))
  2.3226 +#endif
  2.3227 +#if 1
  2.3228 +#define acc_int_fast32_t           acc_int32f_t
  2.3229 +#define acc_uint_fast32_t          acc_uint32f_t
  2.3230 +#define ACC_SIZEOF_ACC_INT_FAST32_T ACC_SIZEOF_ACC_INT32F_T
  2.3231 +#define ACC_TYPEOF_ACC_INT_FAST32_T ACC_TYPEOF_ACC_INT32F_T
  2.3232 +ACC_COMPILE_TIME_ASSERT_HEADER(sizeof(acc_int_fast32_t) >= 4)
  2.3233 +ACC_COMPILE_TIME_ASSERT_HEADER(sizeof(acc_int_fast32_t) == sizeof(acc_uint_fast32_t))
  2.3234 +#endif
  2.3235 +#if defined(acc_int64f_t)
  2.3236 +#define acc_int_fast64_t           acc_int64f_t
  2.3237 +#define acc_uint_fast64_t          acc_uint64f_t
  2.3238 +#define ACC_SIZEOF_ACC_INT_FAST64_T ACC_SIZEOF_ACC_INT64F_T
  2.3239 +#define ACC_TYPEOF_ACC_INT_FAST64_T ACC_TYPEOF_ACC_INT64F_T
  2.3240 +ACC_COMPILE_TIME_ASSERT_HEADER(sizeof(acc_int_fast64_t) >= 8)
  2.3241 +ACC_COMPILE_TIME_ASSERT_HEADER(sizeof(acc_int_fast64_t) == sizeof(acc_uint_fast64_t))
  2.3242 +#endif
  2.3243 +#if !defined(ACC_INT16_C)
  2.3244 +#  if (ACC_BROKEN_INTEGRAL_CONSTANTS) && (ACC_SIZEOF_INT >= 2)
  2.3245 +#    define ACC_INT16_C(c)          ((c) + 0)
  2.3246 +#    define ACC_UINT16_C(c)         ((c) + 0U)
  2.3247 +#  elif (ACC_BROKEN_INTEGRAL_CONSTANTS) && (ACC_SIZEOF_LONG >= 2)
  2.3248 +#    define ACC_INT16_C(c)          ((c) + 0L)
  2.3249 +#    define ACC_UINT16_C(c)         ((c) + 0UL)
  2.3250 +#  elif (ACC_SIZEOF_INT >= 2)
  2.3251 +#    define ACC_INT16_C(c)          (c)
  2.3252 +#    define ACC_UINT16_C(c)         (c##U)
  2.3253 +#  elif (ACC_SIZEOF_LONG >= 2)
  2.3254 +#    define ACC_INT16_C(c)          (c##L)
  2.3255 +#    define ACC_UINT16_C(c)         (c##UL)
  2.3256 +#  else
  2.3257 +#    error "ACC_INT16_C"
  2.3258 +#  endif
  2.3259 +#endif
  2.3260 +#if !defined(ACC_INT32_C)
  2.3261 +#  if (ACC_BROKEN_INTEGRAL_CONSTANTS) && (ACC_SIZEOF_INT >= 4)
  2.3262 +#    define ACC_INT32_C(c)          ((c) + 0)
  2.3263 +#    define ACC_UINT32_C(c)         ((c) + 0U)
  2.3264 +#  elif (ACC_BROKEN_INTEGRAL_CONSTANTS) && (ACC_SIZEOF_LONG >= 4)
  2.3265 +#    define ACC_INT32_C(c)          ((c) + 0L)
  2.3266 +#    define ACC_UINT32_C(c)         ((c) + 0UL)
  2.3267 +#  elif (ACC_SIZEOF_INT >= 4)
  2.3268 +#    define ACC_INT32_C(c)          (c)
  2.3269 +#    define ACC_UINT32_C(c)         (c##U)
  2.3270 +#  elif (ACC_SIZEOF_LONG >= 4)
  2.3271 +#    define ACC_INT32_C(c)          (c##L)
  2.3272 +#    define ACC_UINT32_C(c)         (c##UL)
  2.3273 +#  elif (ACC_SIZEOF_LONG_LONG >= 4)
  2.3274 +#    define ACC_INT32_C(c)          (c##LL)
  2.3275 +#    define ACC_UINT32_C(c)         (c##ULL)
  2.3276 +#  else
  2.3277 +#    error "ACC_INT32_C"
  2.3278 +#  endif
  2.3279 +#endif
  2.3280 +#if !defined(ACC_INT64_C) && defined(acc_int64l_t)
  2.3281 +#  if (ACC_BROKEN_INTEGRAL_CONSTANTS) && (ACC_SIZEOF_INT >= 8)
  2.3282 +#    define ACC_INT64_C(c)          ((c) + 0)
  2.3283 +#    define ACC_UINT64_C(c)         ((c) + 0U)
  2.3284 +#  elif (ACC_BROKEN_INTEGRAL_CONSTANTS) && (ACC_SIZEOF_LONG >= 8)
  2.3285 +#    define ACC_INT64_C(c)          ((c) + 0L)
  2.3286 +#    define ACC_UINT64_C(c)         ((c) + 0UL)
  2.3287 +#  elif (ACC_SIZEOF_INT >= 8)
  2.3288 +#    define ACC_INT64_C(c)          (c)
  2.3289 +#    define ACC_UINT64_C(c)         (c##U)
  2.3290 +#  elif (ACC_SIZEOF_LONG >= 8)
  2.3291 +#    define ACC_INT64_C(c)          (c##L)
  2.3292 +#    define ACC_UINT64_C(c)         (c##UL)
  2.3293 +#  else
  2.3294 +#    error "ACC_INT64_C"
  2.3295 +#  endif
  2.3296 +#endif
  2.3297 +#endif
  2.3298 +#if (ACC_CFG_NO_CONFIG_HEADER)
  2.3299 +#elif defined(ACC_CFG_CONFIG_HEADER)
  2.3300 +#else
  2.3301 +#if !(ACC_CFG_AUTO_NO_HEADERS)
  2.3302 +#if (ACC_LIBC_NAKED)
  2.3303 +#elif (ACC_LIBC_FREESTANDING)
  2.3304 +#  define HAVE_LIMITS_H 1
  2.3305 +#  define HAVE_STDARG_H 1
  2.3306 +#  define HAVE_STDDEF_H 1
  2.3307 +#elif (ACC_LIBC_MOSTLY_FREESTANDING)
  2.3308 +#  define HAVE_LIMITS_H 1
  2.3309 +#  define HAVE_SETJMP_H 1
  2.3310 +#  define HAVE_STDARG_H 1
  2.3311 +#  define HAVE_STDDEF_H 1
  2.3312 +#  define HAVE_STDIO_H 1
  2.3313 +#  define HAVE_STRING_H 1
  2.3314 +#else
  2.3315 +#define STDC_HEADERS 1
  2.3316 +#define HAVE_ASSERT_H 1
  2.3317 +#define HAVE_CTYPE_H 1
  2.3318 +#define HAVE_DIRENT_H 1
  2.3319 +#define HAVE_ERRNO_H 1
  2.3320 +#define HAVE_FCNTL_H 1
  2.3321 +#define HAVE_FLOAT_H 1
  2.3322 +#define HAVE_LIMITS_H 1
  2.3323 +#define HAVE_MALLOC_H 1
  2.3324 +#define HAVE_MEMORY_H 1
  2.3325 +#define HAVE_SETJMP_H 1
  2.3326 +#define HAVE_SIGNAL_H 1
  2.3327 +#define HAVE_STDARG_H 1
  2.3328 +#define HAVE_STDDEF_H 1
  2.3329 +#define HAVE_STDIO_H 1
  2.3330 +#define HAVE_STDLIB_H 1
  2.3331 +#define HAVE_STRING_H 1
  2.3332 +#define HAVE_TIME_H 1
  2.3333 +#define HAVE_UNISTD_H 1
  2.3334 +#define HAVE_UTIME_H 1
  2.3335 +#define HAVE_SYS_STAT_H 1
  2.3336 +#define HAVE_SYS_TIME_H 1
  2.3337 +#define HAVE_SYS_TYPES_H 1
  2.3338 +#if (ACC_OS_POSIX)
  2.3339 +#  if (ACC_OS_POSIX_AIX)
  2.3340 +#    define HAVE_SYS_RESOURCE_H 1
  2.3341 +#  elif (ACC_OS_POSIX_DARWIN || ACC_OS_POSIX_FREEBSD || ACC_OS_POSIX_NETBSD || ACC_OS_POSIX_OPENBSD)
  2.3342 +#    define HAVE_STRINGS_H 1
  2.3343 +#    undef HAVE_MALLOC_H
  2.3344 +#  elif (ACC_OS_POSIX_HPUX || ACC_OS_POSIX_INTERIX)
  2.3345 +#    define HAVE_ALLOCA_H 1
  2.3346 +#  elif (ACC_OS_POSIX_DARWIN && ACC_LIBC_MSL)
  2.3347 +#    undef HAVE_SYS_TIME_H
  2.3348 +#    undef HAVE_SYS_TYPES_H
  2.3349 +#  elif (ACC_OS_POSIX_SOLARIS || ACC_OS_POSIX_SUNOS)
  2.3350 +#    define HAVE_ALLOCA_H 1
  2.3351 +#  endif
  2.3352 +#  if (ACC_LIBC_DIETLIBC || ACC_LIBC_GLIBC || ACC_LIBC_UCLIBC)
  2.3353 +#    define HAVE_STRINGS_H 1
  2.3354 +#    define HAVE_SYS_MMAN_H 1
  2.3355 +#    define HAVE_SYS_RESOURCE_H 1
  2.3356 +#    define HAVE_SYS_WAIT_H 1
  2.3357 +#  endif
  2.3358 +#  if (ACC_LIBC_NEWLIB)
  2.3359 +#    undef HAVE_STRINGS_H
  2.3360 +#  endif
  2.3361 +#elif (ACC_OS_CYGWIN)
  2.3362 +#  define HAVE_IO_H 1
  2.3363 +#elif (ACC_OS_EMX)
  2.3364 +#  define HAVE_ALLOCA_H 1
  2.3365 +#  define HAVE_IO_H 1
  2.3366 +#elif (ACC_ARCH_M68K && ACC_OS_TOS && ACC_CC_GNUC)
  2.3367 +#  if !defined(__MINT__)
  2.3368 +#    undef HAVE_MALLOC_H
  2.3369 +#  endif
  2.3370 +#elif (ACC_ARCH_M68K && ACC_OS_TOS && (ACC_CC_PUREC || ACC_CC_TURBOC))
  2.3371 +#  undef HAVE_DIRENT_H
  2.3372 +#  undef HAVE_FCNTL_H
  2.3373 +#  undef HAVE_MALLOC_H
  2.3374 +#  undef HAVE_MEMORY_H
  2.3375 +#  undef HAVE_UNISTD_H
  2.3376 +#  undef HAVE_UTIME_H
  2.3377 +#  undef HAVE_SYS_STAT_H
  2.3378 +#  undef HAVE_SYS_TIME_H
  2.3379 +#  undef HAVE_SYS_TYPES_H
  2.3380 +#endif
  2.3381 +#if (ACC_OS_DOS16 || ACC_OS_DOS32 || ACC_OS_OS2 || ACC_OS_OS216 || ACC_OS_WIN16 || ACC_OS_WIN32 || ACC_OS_WIN64)
  2.3382 +#define HAVE_CONIO_H 1
  2.3383 +#define HAVE_DIRECT_H 1
  2.3384 +#define HAVE_DOS_H 1
  2.3385 +#define HAVE_IO_H 1
  2.3386 +#define HAVE_SHARE_H 1
  2.3387 +#if (ACC_CC_AZTECC)
  2.3388 +#  undef HAVE_CONIO_H
  2.3389 +#  undef HAVE_DIRECT_H
  2.3390 +#  undef HAVE_DIRENT_H
  2.3391 +#  undef HAVE_MALLOC_H
  2.3392 +#  undef HAVE_SHARE_H
  2.3393 +#  undef HAVE_UNISTD_H
  2.3394 +#  undef HAVE_UTIME_H
  2.3395 +#  undef HAVE_SYS_STAT_H
  2.3396 +#  undef HAVE_SYS_TIME_H
  2.3397 +#  undef HAVE_SYS_TYPES_H
  2.3398 +#elif (ACC_CC_BORLANDC)
  2.3399 +#  undef HAVE_UNISTD_H
  2.3400 +#  undef HAVE_SYS_TIME_H
  2.3401 +#  if (ACC_OS_WIN32 || ACC_OS_WIN64)
  2.3402 +#    undef HAVE_DIRENT_H
  2.3403 +#  endif
  2.3404 +#  if (__BORLANDC__ < 0x0400)
  2.3405 +#    undef HAVE_DIRENT_H
  2.3406 +#    undef HAVE_UTIME_H
  2.3407 +#  endif
  2.3408 +#elif (ACC_CC_DMC)
  2.3409 +#  undef HAVE_DIRENT_H
  2.3410 +#  undef HAVE_UNISTD_H
  2.3411 +#  define HAVE_SYS_DIRENT_H 1
  2.3412 +#elif (ACC_OS_DOS32 && ACC_CC_GNUC) && defined(__DJGPP__)
  2.3413 +#elif (ACC_OS_DOS32 && ACC_CC_HIGHC)
  2.3414 +#  define HAVE_ALLOCA_H 1
  2.3415 +#  undef HAVE_DIRENT_H
  2.3416 +#  undef HAVE_UNISTD_H
  2.3417 +#elif (ACC_CC_IBMC && ACC_OS_OS2)
  2.3418 +#  undef HAVE_DOS_H
  2.3419 +#  undef HAVE_DIRENT_H
  2.3420 +#  undef HAVE_UNISTD_H
  2.3421 +#  undef HAVE_UTIME_H
  2.3422 +#  undef HAVE_SYS_TIME_H
  2.3423 +#  define HAVE_SYS_UTIME_H 1
  2.3424 +#elif (ACC_CC_CLANG_MSC || ACC_CC_GHS || ACC_CC_INTELC_MSC || ACC_CC_MSC)
  2.3425 +#  undef HAVE_DIRENT_H
  2.3426 +#  undef HAVE_UNISTD_H
  2.3427 +#  undef HAVE_UTIME_H
  2.3428 +#  undef HAVE_SYS_TIME_H
  2.3429 +#  define HAVE_SYS_UTIME_H 1
  2.3430 +#elif (ACC_CC_LCCWIN32)
  2.3431 +#  undef HAVE_DIRENT_H
  2.3432 +#  undef HAVE_DOS_H
  2.3433 +#  undef HAVE_UNISTD_H
  2.3434 +#  undef HAVE_SYS_TIME_H
  2.3435 +#elif (ACC_OS_WIN32 && ACC_CC_GNUC) && defined(__MINGW32__)
  2.3436 +#  undef HAVE_UTIME_H
  2.3437 +#  define HAVE_SYS_UTIME_H 1
  2.3438 +#elif (ACC_OS_WIN32 && ACC_LIBC_MSL)
  2.3439 +#  define HAVE_ALLOCA_H 1
  2.3440 +#  undef HAVE_DOS_H
  2.3441 +#  undef HAVE_SHARE_H
  2.3442 +#  undef HAVE_SYS_TIME_H
  2.3443 +#elif (ACC_CC_NDPC)
  2.3444 +#  undef HAVE_DIRENT_H
  2.3445 +#  undef HAVE_DOS_H
  2.3446 +#  undef HAVE_UNISTD_H
  2.3447 +#  undef HAVE_UTIME_H
  2.3448 +#  undef HAVE_SYS_TIME_H
  2.3449 +#elif (ACC_CC_PACIFICC)
  2.3450 +#  undef HAVE_DIRECT_H
  2.3451 +#  undef HAVE_DIRENT_H
  2.3452 +#  undef HAVE_FCNTL_H
  2.3453 +#  undef HAVE_IO_H
  2.3454 +#  undef HAVE_MALLOC_H
  2.3455 +#  undef HAVE_MEMORY_H
  2.3456 +#  undef HAVE_SHARE_H
  2.3457 +#  undef HAVE_UNISTD_H
  2.3458 +#  undef HAVE_UTIME_H
  2.3459 +#  undef HAVE_SYS_STAT_H
  2.3460 +#  undef HAVE_SYS_TIME_H
  2.3461 +#  undef HAVE_SYS_TYPES_H
  2.3462 +#elif (ACC_OS_WIN32 && ACC_CC_PELLESC)
  2.3463 +#  undef HAVE_DIRENT_H
  2.3464 +#  undef HAVE_DOS_H
  2.3465 +#  undef HAVE_MALLOC_H
  2.3466 +#  undef HAVE_SHARE_H
  2.3467 +#  undef HAVE_UNISTD_H
  2.3468 +#  undef HAVE_UTIME_H
  2.3469 +#  undef HAVE_SYS_TIME_H
  2.3470 +#  if (__POCC__ < 280)
  2.3471 +#  else
  2.3472 +#    define HAVE_SYS_UTIME_H 1
  2.3473 +#  endif
  2.3474 +#elif (ACC_OS_WIN32 && ACC_CC_PGI) && defined(__MINGW32__)
  2.3475 +#  undef HAVE_UTIME_H
  2.3476 +#  define HAVE_SYS_UTIME_H 1
  2.3477 +#elif (ACC_OS_WIN32 && ACC_CC_GNUC) && defined(__PW32__)
  2.3478 +#elif (ACC_CC_SYMANTECC)
  2.3479 +#  undef HAVE_DIRENT_H
  2.3480 +#  undef HAVE_UNISTD_H
  2.3481 +#  if (__SC__ < 0x700)
  2.3482 +#    undef HAVE_UTIME_H
  2.3483 +#    undef HAVE_SYS_TIME_H
  2.3484 +#  endif
  2.3485 +#elif (ACC_CC_TOPSPEEDC)
  2.3486 +#  undef HAVE_DIRENT_H
  2.3487 +#  undef HAVE_UNISTD_H
  2.3488 +#  undef HAVE_UTIME_H
  2.3489 +#  undef HAVE_SYS_STAT_H
  2.3490 +#  undef HAVE_SYS_TIME_H
  2.3491 +#  undef HAVE_SYS_TYPES_H
  2.3492 +#elif (ACC_CC_TURBOC)
  2.3493 +#  undef HAVE_UNISTD_H
  2.3494 +#  undef HAVE_SYS_TIME_H
  2.3495 +#  undef HAVE_SYS_TYPES_H
  2.3496 +#  if (ACC_OS_WIN32 || ACC_OS_WIN64)
  2.3497 +#    undef HAVE_DIRENT_H
  2.3498 +#  endif
  2.3499 +#  if (__TURBOC__ < 0x0200)
  2.3500 +#    undef HAVE_SIGNAL_H
  2.3501 +#  endif
  2.3502 +#  if (__TURBOC__ < 0x0400)
  2.3503 +#    undef HAVE_DIRECT_H
  2.3504 +#    undef HAVE_DIRENT_H
  2.3505 +#    undef HAVE_MALLOC_H
  2.3506 +#    undef HAVE_MEMORY_H
  2.3507 +#    undef HAVE_UTIME_H
  2.3508 +#  endif
  2.3509 +#elif (ACC_CC_WATCOMC)
  2.3510 +#  undef HAVE_DIRENT_H
  2.3511 +#  undef HAVE_UTIME_H
  2.3512 +#  undef HAVE_SYS_TIME_H
  2.3513 +#  define HAVE_SYS_UTIME_H 1
  2.3514 +#  if (__WATCOMC__ < 950)
  2.3515 +#    undef HAVE_UNISTD_H
  2.3516 +#  endif
  2.3517 +#elif (ACC_CC_ZORTECHC)
  2.3518 +#  undef HAVE_DIRENT_H
  2.3519 +#  undef HAVE_MEMORY_H
  2.3520 +#  undef HAVE_UNISTD_H
  2.3521 +#  undef HAVE_UTIME_H
  2.3522 +#  undef HAVE_SYS_TIME_H
  2.3523 +#endif
  2.3524 +#endif
  2.3525 +#if (ACC_OS_CONSOLE)
  2.3526 +#  undef HAVE_DIRENT_H
  2.3527 +#endif
  2.3528 +#if (ACC_OS_EMBEDDED)
  2.3529 +#  undef HAVE_DIRENT_H
  2.3530 +#endif
  2.3531 +#if (ACC_LIBC_ISOC90 || ACC_LIBC_ISOC99)
  2.3532 +#  undef HAVE_DIRENT_H
  2.3533 +#  undef HAVE_FCNTL_H
  2.3534 +#  undef HAVE_MALLOC_H
  2.3535 +#  undef HAVE_UNISTD_H
  2.3536 +#  undef HAVE_UTIME_H
  2.3537 +#  undef HAVE_SYS_STAT_H
  2.3538 +#  undef HAVE_SYS_TIME_H
  2.3539 +#  undef HAVE_SYS_TYPES_H
  2.3540 +#endif
  2.3541 +#if (ACC_LIBC_GLIBC >= 0x020100ul)
  2.3542 +#  define HAVE_STDINT_H 1
  2.3543 +#elif (ACC_LIBC_DIETLIBC)
  2.3544 +#  undef HAVE_STDINT_H
  2.3545 +#elif (ACC_LIBC_UCLIBC)
  2.3546 +#  define HAVE_STDINT_H 1
  2.3547 +#elif (ACC_CC_BORLANDC) && (__BORLANDC__ >= 0x560)
  2.3548 +#  undef HAVE_STDINT_H
  2.3549 +#elif (ACC_CC_DMC) && (__DMC__ >= 0x825)
  2.3550 +#  define HAVE_STDINT_H 1
  2.3551 +#endif
  2.3552 +#if (HAVE_SYS_TIME_H && HAVE_TIME_H)
  2.3553 +#  define TIME_WITH_SYS_TIME 1
  2.3554 +#endif
  2.3555 +#endif
  2.3556 +#endif
  2.3557 +#if !(ACC_CFG_AUTO_NO_FUNCTIONS)
  2.3558 +#if (ACC_LIBC_NAKED)
  2.3559 +#elif (ACC_LIBC_FREESTANDING)
  2.3560 +#elif (ACC_LIBC_MOSTLY_FREESTANDING)
  2.3561 +#  define HAVE_LONGJMP 1
  2.3562 +#  define HAVE_MEMCMP 1
  2.3563 +#  define HAVE_MEMCPY 1
  2.3564 +#  define HAVE_MEMMOVE 1
  2.3565 +#  define HAVE_MEMSET 1
  2.3566 +#  define HAVE_SETJMP 1
  2.3567 +#else
  2.3568 +#define HAVE_ACCESS 1
  2.3569 +#define HAVE_ALLOCA 1
  2.3570 +#define HAVE_ATEXIT 1
  2.3571 +#define HAVE_ATOI 1
  2.3572 +#define HAVE_ATOL 1
  2.3573 +#define HAVE_CHMOD 1
  2.3574 +#define HAVE_CHOWN 1
  2.3575 +#define HAVE_CTIME 1
  2.3576 +#define HAVE_DIFFTIME 1
  2.3577 +#define HAVE_FILENO 1
  2.3578 +#define HAVE_FSTAT 1
  2.3579 +#define HAVE_GETENV 1
  2.3580 +#define HAVE_GETTIMEOFDAY 1
  2.3581 +#define HAVE_GMTIME 1
  2.3582 +#define HAVE_ISATTY 1
  2.3583 +#define HAVE_LOCALTIME 1
  2.3584 +#define HAVE_LONGJMP 1
  2.3585 +#define HAVE_LSTAT 1
  2.3586 +#define HAVE_MEMCMP 1
  2.3587 +#define HAVE_MEMCPY 1
  2.3588 +#define HAVE_MEMMOVE 1
  2.3589 +#define HAVE_MEMSET 1
  2.3590 +#define HAVE_MKDIR 1
  2.3591 +#define HAVE_MKTIME 1
  2.3592 +#define HAVE_QSORT 1
  2.3593 +#define HAVE_RAISE 1
  2.3594 +#define HAVE_RMDIR 1
  2.3595 +#define HAVE_SETJMP 1
  2.3596 +#define HAVE_SIGNAL 1
  2.3597 +#define HAVE_SNPRINTF 1
  2.3598 +#define HAVE_STAT 1
  2.3599 +#define HAVE_STRCHR 1
  2.3600 +#define HAVE_STRDUP 1
  2.3601 +#define HAVE_STRERROR 1
  2.3602 +#define HAVE_STRFTIME 1
  2.3603 +#define HAVE_STRRCHR 1
  2.3604 +#define HAVE_STRSTR 1
  2.3605 +#define HAVE_TIME 1
  2.3606 +#define HAVE_UMASK 1
  2.3607 +#define HAVE_UTIME 1
  2.3608 +#define HAVE_VSNPRINTF 1
  2.3609 +#if (ACC_OS_BEOS || ACC_OS_CYGWIN || ACC_OS_POSIX || ACC_OS_QNX || ACC_OS_VMS)
  2.3610 +#  define HAVE_STRCASECMP 1
  2.3611 +#  define HAVE_STRNCASECMP 1
  2.3612 +#elif (ACC_OS_WIN32 && ACC_CC_GNUC) && defined(__PW32__)
  2.3613 +#  define HAVE_STRCASECMP 1
  2.3614 +#  define HAVE_STRNCASECMP 1
  2.3615 +#else
  2.3616 +#  define HAVE_STRICMP 1
  2.3617 +#  define HAVE_STRNICMP 1
  2.3618 +#endif
  2.3619 +#if (ACC_OS_POSIX)
  2.3620 +#  if (ACC_OS_POSIX_AIX)
  2.3621 +#    define HAVE_GETRUSAGE 1
  2.3622 +#  elif (ACC_OS_POSIX_DARWIN && ACC_LIBC_MSL)
  2.3623 +#    undef HAVE_CHOWN
  2.3624 +#    undef HAVE_LSTAT
  2.3625 +#  elif (ACC_OS_POSIX_UNICOS)
  2.3626 +#    undef HAVE_ALLOCA
  2.3627 +#    undef HAVE_SNPRINTF
  2.3628 +#    undef HAVE_VSNPRINTF
  2.3629 +#  endif
  2.3630 +#  if (ACC_CC_TINYC)
  2.3631 +#    undef HAVE_ALLOCA
  2.3632 +#  endif
  2.3633 +#  if (ACC_LIBC_DIETLIBC || ACC_LIBC_GLIBC || ACC_LIBC_UCLIBC)
  2.3634 +#    define HAVE_GETRUSAGE 1
  2.3635 +#    define HAVE_GETPAGESIZE 1
  2.3636 +#    define HAVE_MMAP 1
  2.3637 +#    define HAVE_MPROTECT 1
  2.3638 +#    define HAVE_MUNMAP 1
  2.3639 +#  endif
  2.3640 +#elif (ACC_OS_CYGWIN)
  2.3641 +#  if (ACC_CC_GNUC < 0x025a00ul)
  2.3642 +#    undef HAVE_GETTIMEOFDAY
  2.3643 +#    undef HAVE_LSTAT
  2.3644 +#  endif
  2.3645 +#  if (ACC_CC_GNUC < 0x025f00ul)
  2.3646 +#    undef HAVE_SNPRINTF
  2.3647 +#    undef HAVE_VSNPRINTF
  2.3648 +#  endif
  2.3649 +#elif (ACC_OS_EMX)
  2.3650 +#  undef HAVE_CHOWN
  2.3651 +#  undef HAVE_LSTAT
  2.3652 +#elif (ACC_ARCH_M68K && ACC_OS_TOS && ACC_CC_GNUC)
  2.3653 +#  if !defined(__MINT__)
  2.3654 +#    undef HAVE_SNPRINTF
  2.3655 +#    undef HAVE_VSNPRINTF
  2.3656 +#  endif
  2.3657 +#elif (ACC_ARCH_M68K && ACC_OS_TOS && (ACC_CC_PUREC || ACC_CC_TURBOC))
  2.3658 +#  undef HAVE_ALLOCA
  2.3659 +#  undef HAVE_ACCESS
  2.3660 +#  undef HAVE_CHMOD
  2.3661 +#  undef HAVE_CHOWN
  2.3662 +#  undef HAVE_FSTAT
  2.3663 +#  undef HAVE_GETTIMEOFDAY
  2.3664 +#  undef HAVE_LSTAT
  2.3665 +#  undef HAVE_SNPRINTF
  2.3666 +#  undef HAVE_UMASK
  2.3667 +#  undef HAVE_UTIME
  2.3668 +#  undef HAVE_VSNPRINTF
  2.3669 +#endif
  2.3670 +#if (ACC_OS_DOS16 || ACC_OS_DOS32 || ACC_OS_OS2 || ACC_OS_OS216 || ACC_OS_WIN16 || ACC_OS_WIN32 || ACC_OS_WIN64)
  2.3671 +#undef HAVE_CHOWN
  2.3672 +#undef HAVE_GETTIMEOFDAY
  2.3673 +#undef HAVE_LSTAT
  2.3674 +#undef HAVE_UMASK
  2.3675 +#if (ACC_CC_AZTECC)
  2.3676 +#  undef HAVE_ALLOCA
  2.3677 +#  undef HAVE_DIFFTIME
  2.3678 +#  undef HAVE_FSTAT
  2.3679 +#  undef HAVE_STRDUP
  2.3680 +#  undef HAVE_SNPRINTF
  2.3681 +#  undef HAVE_UTIME
  2.3682 +#  undef HAVE_VSNPRINTF
  2.3683 +#elif (ACC_CC_BORLANDC)
  2.3684 +#  if (__BORLANDC__ < 0x0400)
  2.3685 +#    undef HAVE_ALLOCA
  2.3686 +#    undef HAVE_UTIME
  2.3687 +#  endif
  2.3688 +#  if ((__BORLANDC__ < 0x0410) && ACC_OS_WIN16)
  2.3689 +#    undef HAVE_ALLOCA
  2.3690 +#  endif
  2.3691 +#  if (__BORLANDC__ < 0x0550)
  2.3692 +#    undef HAVE_SNPRINTF
  2.3693 +#    undef HAVE_VSNPRINTF
  2.3694 +#  endif
  2.3695 +#elif (ACC_CC_DMC)
  2.3696 +#  if (ACC_OS_WIN16)
  2.3697 +#    undef HAVE_ALLOCA
  2.3698 +#  endif
  2.3699 +#  define snprintf _snprintf
  2.3700 +#  define vsnprintf _vsnprintf
  2.3701 +#elif (ACC_OS_DOS32 && ACC_CC_GNUC) && defined(__DJGPP__)
  2.3702 +#  undef HAVE_SNPRINTF
  2.3703 +#  undef HAVE_VSNPRINTF
  2.3704 +#elif (ACC_OS_DOS32 && ACC_CC_HIGHC)
  2.3705 +#  undef HAVE_SNPRINTF
  2.3706 +#  undef HAVE_VSNPRINTF
  2.3707 +#elif (ACC_CC_GHS)
  2.3708 +#  undef HAVE_ALLOCA
  2.3709 +#  ifndef snprintf
  2.3710 +#  define snprintf _snprintf
  2.3711 +#  endif
  2.3712 +#  ifndef vsnprintf
  2.3713 +#  define vsnprintf _vsnprintf
  2.3714 +#  endif
  2.3715 +#elif (ACC_CC_IBMC)
  2.3716 +#  undef HAVE_SNPRINTF
  2.3717 +#  undef HAVE_VSNPRINTF
  2.3718 +#elif (ACC_CC_CLANG_MSC || ACC_CC_INTELC_MSC)
  2.3719 +#  ifndef snprintf
  2.3720 +#  define snprintf _snprintf
  2.3721 +#  endif
  2.3722 +#  ifndef vsnprintf
  2.3723 +#  define vsnprintf _vsnprintf
  2.3724 +#  endif
  2.3725 +#elif (ACC_CC_LCCWIN32)
  2.3726 +#  define utime _utime
  2.3727 +#elif (ACC_CC_MSC)
  2.3728 +#  if (_MSC_VER < 600)
  2.3729 +#    undef HAVE_STRFTIME
  2.3730 +#  endif
  2.3731 +#  if (_MSC_VER < 700)
  2.3732 +#    undef HAVE_SNPRINTF
  2.3733 +#    undef HAVE_VSNPRINTF
  2.3734 +#  elif (_MSC_VER < 1500)
  2.3735 +#    ifndef snprintf
  2.3736 +#    define snprintf _snprintf
  2.3737 +#    endif
  2.3738 +#    ifndef vsnprintf
  2.3739 +#    define vsnprintf _vsnprintf
  2.3740 +#    endif
  2.3741 +#  elif (_MSC_VER < 1900)
  2.3742 +#    ifndef snprintf
  2.3743 +#    define snprintf _snprintf
  2.3744 +#    endif
  2.3745 +#  endif
  2.3746 +#  if ((_MSC_VER < 800) && ACC_OS_WIN16)
  2.3747 +#    undef HAVE_ALLOCA
  2.3748 +#  endif
  2.3749 +#  if (ACC_ARCH_I086) && defined(__cplusplus)
  2.3750 +#    undef HAVE_LONGJMP
  2.3751 +#    undef HAVE_SETJMP
  2.3752 +#  endif
  2.3753 +#elif (ACC_OS_WIN32 && ACC_CC_GNUC) && defined(__MINGW32__)
  2.3754 +#  if (ACC_CC_GNUC < 0x025f00ul)
  2.3755 +#    undef HAVE_SNPRINTF
  2.3756 +#    undef HAVE_VSNPRINTF
  2.3757 +#  else
  2.3758 +#    define snprintf _snprintf
  2.3759 +#    define vsnprintf _vsnprintf
  2.3760 +#  endif
  2.3761 +#elif (ACC_OS_WIN32 && ACC_LIBC_MSL)
  2.3762 +#  if (__MSL__ < 0x8000ul)
  2.3763 +#    undef HAVE_CHMOD
  2.3764 +#  endif
  2.3765 +#elif (ACC_CC_NDPC)
  2.3766 +#  undef HAVE_ALLOCA
  2.3767 +#  undef HAVE_SNPRINTF
  2.3768 +#  undef HAVE_STRNICMP
  2.3769 +#  undef HAVE_UTIME
  2.3770 +#  undef HAVE_VSNPRINTF
  2.3771 +#  if defined(__cplusplus)
  2.3772 +#    undef HAVE_STAT
  2.3773 +#  endif
  2.3774 +#elif (ACC_CC_PACIFICC)
  2.3775 +#  undef HAVE_ACCESS
  2.3776 +#  undef HAVE_ALLOCA
  2.3777 +#  undef HAVE_CHMOD
  2.3778 +#  undef HAVE_DIFFTIME
  2.3779 +#  undef HAVE_FSTAT
  2.3780 +#  undef HAVE_MKTIME
  2.3781 +#  undef HAVE_RAISE
  2.3782 +#  undef HAVE_SNPRINTF
  2.3783 +#  undef HAVE_STRFTIME
  2.3784 +#  undef HAVE_UTIME
  2.3785 +#  undef HAVE_VSNPRINTF
  2.3786 +#elif (ACC_OS_WIN32 && ACC_CC_PELLESC)
  2.3787 +#  if (__POCC__ < 280)
  2.3788 +#    define alloca _alloca
  2.3789 +#    undef HAVE_UTIME
  2.3790 +#  endif
  2.3791 +#elif (ACC_OS_WIN32 && ACC_CC_PGI) && defined(__MINGW32__)
  2.3792 +#  define snprintf _snprintf
  2.3793 +#  define vsnprintf _vsnprintf
  2.3794 +#elif (ACC_OS_WIN32 && ACC_CC_GNUC) && defined(__PW32__)
  2.3795 +#  undef HAVE_SNPRINTF
  2.3796 +#  undef HAVE_VSNPRINTF
  2.3797 +#elif (ACC_CC_SYMANTECC)
  2.3798 +#  if (ACC_OS_WIN16 && (ACC_MM_MEDIUM || ACC_MM_LARGE || ACC_MM_HUGE))
  2.3799 +#    undef HAVE_ALLOCA
  2.3800 +#  endif
  2.3801 +#  if (__SC__ < 0x600)
  2.3802 +#    undef HAVE_SNPRINTF
  2.3803 +#    undef HAVE_VSNPRINTF
  2.3804 +#  else
  2.3805 +#    define snprintf _snprintf
  2.3806 +#    define vsnprintf _vsnprintf
  2.3807 +#  endif
  2.3808 +#  if (__SC__ < 0x700)
  2.3809 +#    undef HAVE_DIFFTIME
  2.3810 +#    undef HAVE_UTIME
  2.3811 +#  endif
  2.3812 +#elif (ACC_CC_TOPSPEEDC)
  2.3813 +#  undef HAVE_SNPRINTF
  2.3814 +#  undef HAVE_VSNPRINTF
  2.3815 +#elif (ACC_CC_TURBOC)
  2.3816 +#  undef HAVE_ALLOCA
  2.3817 +#  undef HAVE_SNPRINTF
  2.3818 +#  undef HAVE_VSNPRINTF
  2.3819 +#  if (__TURBOC__ < 0x0200)
  2.3820 +#    undef HAVE_RAISE
  2.3821 +#    undef HAVE_SIGNAL
  2.3822 +#  endif
  2.3823 +#  if (__TURBOC__ < 0x0295)
  2.3824 +#    undef HAVE_MKTIME
  2.3825 +#    undef HAVE_STRFTIME
  2.3826 +#  endif
  2.3827 +#  if (__TURBOC__ < 0x0400)
  2.3828 +#    undef HAVE_UTIME
  2.3829 +#  endif
  2.3830 +#elif (ACC_CC_WATCOMC)
  2.3831 +#  if (__WATCOMC__ < 1100)
  2.3832 +#    undef HAVE_SNPRINTF
  2.3833 +#    undef HAVE_VSNPRINTF
  2.3834 +#  elif (__WATCOMC__ < 1200)
  2.3835 +#    define snprintf _snprintf
  2.3836 +#    define vsnprintf _vsnprintf
  2.3837 +#  endif
  2.3838 +#elif (ACC_CC_ZORTECHC)
  2.3839 +#  if (ACC_OS_WIN16 && (ACC_MM_MEDIUM || ACC_MM_LARGE || ACC_MM_HUGE))
  2.3840 +#    undef HAVE_ALLOCA
  2.3841 +#  endif
  2.3842 +#  undef HAVE_DIFFTIME
  2.3843 +#  undef HAVE_SNPRINTF
  2.3844 +#  undef HAVE_UTIME
  2.3845 +#  undef HAVE_VSNPRINTF
  2.3846 +#endif
  2.3847 +#endif
  2.3848 +#if (ACC_OS_CONSOLE)
  2.3849 +#  undef HAVE_ACCESS
  2.3850 +#  undef HAVE_CHMOD
  2.3851 +#  undef HAVE_CHOWN
  2.3852 +#  undef HAVE_GETTIMEOFDAY
  2.3853 +#  undef HAVE_LSTAT
  2.3854 +#  undef HAVE_TIME
  2.3855 +#  undef HAVE_UMASK
  2.3856 +#  undef HAVE_UTIME
  2.3857 +#endif
  2.3858 +#if (ACC_LIBC_ISOC90 || ACC_LIBC_ISOC99)
  2.3859 +#  undef HAVE_ACCESS
  2.3860 +#  undef HAVE_CHMOD
  2.3861 +#  undef HAVE_CHOWN
  2.3862 +#  undef HAVE_FILENO
  2.3863 +#  undef HAVE_FSTAT
  2.3864 +#  undef HAVE_GETTIMEOFDAY
  2.3865 +#  undef HAVE_LSTAT
  2.3866 +#  undef HAVE_STAT
  2.3867 +#  undef HAVE_UMASK
  2.3868 +#  undef HAVE_UTIME
  2.3869 +# if 1
  2.3870 +#  undef HAVE_ALLOCA
  2.3871 +#  undef HAVE_ISATTY
  2.3872 +#  undef HAVE_MKDIR
  2.3873 +#  undef HAVE_RMDIR
  2.3874 +#  undef HAVE_STRDUP
  2.3875 +#  undef HAVE_STRICMP
  2.3876 +#  undef HAVE_STRNICMP
  2.3877 +# endif
  2.3878 +#endif
  2.3879 +#endif
  2.3880 +#endif
  2.3881 +#if !(ACC_CFG_AUTO_NO_SIZES)
  2.3882 +#if !defined(SIZEOF_SHORT) && defined(ACC_SIZEOF_SHORT)
  2.3883 +#  define SIZEOF_SHORT          ACC_SIZEOF_SHORT
  2.3884 +#endif
  2.3885 +#if !defined(SIZEOF_INT) && defined(ACC_SIZEOF_INT)
  2.3886 +#  define SIZEOF_INT            ACC_SIZEOF_INT
  2.3887 +#endif
  2.3888 +#if !defined(SIZEOF_LONG) && defined(ACC_SIZEOF_LONG)
  2.3889 +#  define SIZEOF_LONG           ACC_SIZEOF_LONG
  2.3890 +#endif
  2.3891 +#if !defined(SIZEOF_LONG_LONG) && defined(ACC_SIZEOF_LONG_LONG)
  2.3892 +#  define SIZEOF_LONG_LONG      ACC_SIZEOF_LONG_LONG
  2.3893 +#endif
  2.3894 +#if !defined(SIZEOF___INT32) && defined(ACC_SIZEOF___INT32)
  2.3895 +#  define SIZEOF___INT32        ACC_SIZEOF___INT32
  2.3896 +#endif
  2.3897 +#if !defined(SIZEOF___INT64) && defined(ACC_SIZEOF___INT64)
  2.3898 +#  define SIZEOF___INT64        ACC_SIZEOF___INT64
  2.3899 +#endif
  2.3900 +#if !defined(SIZEOF_VOID_P) && defined(ACC_SIZEOF_VOID_P)
  2.3901 +#  define SIZEOF_VOID_P         ACC_SIZEOF_VOID_P
  2.3902 +#endif
  2.3903 +#if !defined(SIZEOF_SIZE_T) && defined(ACC_SIZEOF_SIZE_T)
  2.3904 +#  define SIZEOF_SIZE_T         ACC_SIZEOF_SIZE_T
  2.3905 +#endif
  2.3906 +#if !defined(SIZEOF_PTRDIFF_T) && defined(ACC_SIZEOF_PTRDIFF_T)
  2.3907 +#  define SIZEOF_PTRDIFF_T      ACC_SIZEOF_PTRDIFF_T
  2.3908 +#endif
  2.3909 +#endif
  2.3910 +#if (HAVE_SIGNAL) && !defined(RETSIGTYPE)
  2.3911 +#  define RETSIGTYPE void
  2.3912 +#endif
  2.3913 +#endif
  2.3914 +#if !(ACC_LANG_ASSEMBLER)
  2.3915 +#if !(ACC_CFG_SKIP_ACC_TYPES)
  2.3916 +#if 1 && !defined(acc_signo_t) && defined(__linux__) && defined(__dietlibc__) && (ACC_SIZEOF_INT != 4)
  2.3917 +#  define acc_signo_t               acc_int32e_t
  2.3918 +#endif
  2.3919 +#if !defined(acc_signo_t)
  2.3920 +#  define acc_signo_t               int
  2.3921 +#endif
  2.3922 +#if defined(__cplusplus)
  2.3923 +extern "C" {
  2.3924 +#endif
  2.3925 +#if (ACC_BROKEN_CDECL_ALT_SYNTAX)
  2.3926 +typedef void __acc_cdecl_sighandler (*acc_sighandler_t)(acc_signo_t);
  2.3927 +#elif defined(RETSIGTYPE)
  2.3928 +typedef RETSIGTYPE (__acc_cdecl_sighandler *acc_sighandler_t)(acc_signo_t);
  2.3929 +#else
  2.3930 +typedef void (__acc_cdecl_sighandler *acc_sighandler_t)(acc_signo_t);
  2.3931 +#endif
  2.3932 +#if defined(__cplusplus)
  2.3933 +}
  2.3934 +#endif
  2.3935 +#  if !(ACC_CFG_SKIP_ACC_UA)
  2.3936 +#if !defined(__acc_ua_volatile)
  2.3937 +#  define __acc_ua_volatile     volatile
  2.3938 +#endif
  2.3939 +#if (ACC_CC_GNUC && (ACC_CC_GNUC < 0x020700ul))
  2.3940 +#elif (ACC_CC_GNUC && (ACC_CC_GNUC < 0x020800ul)) && defined(__cplusplus)
  2.3941 +#elif (ACC_CC_INTELC) && defined(_WIN32)
  2.3942 +#elif (ACC_CC_INTELC && (__INTEL_COMPILER < 700))
  2.3943 +#elif (ACC_CC_LLVM)
  2.3944 +#elif (ACC_CC_GNUC || ACC_CC_INTELC || ACC_CC_PATHSCALE)
  2.3945 +#if !defined(__acc_ua16_t) && (ACC_OPT_UNALIGNED16) && defined(acc_int16e_t)
  2.3946 +   typedef struct { __acc_ua_volatile acc_uint16e_t v __attribute__((__packed__)); } __acc_ua16_t;
  2.3947 +#  define __acc_ua16_t __acc_ua16_t
  2.3948 +#endif
  2.3949 +#if !defined(__acc_ua32_t) && (ACC_OPT_UNALIGNED32) && defined(acc_int32e_t)
  2.3950 +   typedef struct { __acc_ua_volatile acc_uint32e_t v __attribute__((__packed__)); } __acc_ua32_t;
  2.3951 +#  define __acc_ua32_t __acc_ua32_t
  2.3952 +#endif
  2.3953 +#if !defined(__acc_ua64_t) && (ACC_OPT_UNALIGNED64) && defined(acc_int64l_t)
  2.3954 +   typedef struct { __acc_ua_volatile acc_uint64l_t v __attribute__((__packed__)); } __acc_ua64_t;
  2.3955 +#  define __acc_ua64_t __acc_ua64_t
  2.3956 +#endif
  2.3957 +#endif
  2.3958 +#if (ACC_OPT_UNALIGNED16) && defined(acc_int16e_t)
  2.3959 +#if 0
  2.3960 +#define ACC_UA_GET16(p)         (* (__acc_ua_volatile const acc_uint16e_t*) (__acc_ua_volatile const void*) (p))
  2.3961 +#define ACC_UA_SET16(p,v)       ((* (__acc_ua_volatile acc_uint16e_t*) (__acc_ua_volatile void*) (p)) = (acc_uint16e_t) (v))
  2.3962 +#else
  2.3963 +#define ACC_UA_GET16(p)         (* ACC_STATIC_CAST2(__acc_ua_volatile const acc_uint16e_t*, __acc_ua_volatile const void*, p))
  2.3964 +#define ACC_UA_SET16(p,v)       (* ACC_STATIC_CAST2(__acc_ua_volatile acc_uint16e_t*, __acc_ua_volatile void*, p) = ACC_ITRUNC(acc_uint16e_t, v))
  2.3965 +#endif
  2.3966 +#if (ACC_ABI_BIG_ENDIAN)
  2.3967 +#  define ACC_UA_GET_BE16(p)    ACC_UA_GET16(p)
  2.3968 +#  define ACC_UA_SET_BE16(p,v)  ACC_UA_SET16(p,v)
  2.3969 +#elif (ACC_ABI_LITTLE_ENDIAN)
  2.3970 +#  define ACC_UA_GET_LE16(p)    ACC_UA_GET16(p)
  2.3971 +#  define ACC_UA_SET_LE16(p,v)  ACC_UA_SET16(p,v)
  2.3972 +#endif
  2.3973 +#if (__acc_HAVE_forceinline)
  2.3974 +#if (ACC_ARCH_POWERPC && ACC_ABI_BIG_ENDIAN) && (ACC_ASM_SYNTAX_GNUC) && (ACC_CC_GNUC)
  2.3975 +#if !defined(ACC_UA_GET_LE16)
  2.3976 +__acc_static_forceinline
  2.3977 +#if (ACC_CC_CLANG || (ACC_CC_GNUC >= 0x020800ul) || ACC_CC_INTELC_GNUC || ACC_CC_LLVM)
  2.3978 +__attribute__((__unused__))
  2.3979 +#endif
  2.3980 +unsigned long __ACC_UA_GET_LE16(__acc_ua_volatile const void* pp) {
  2.3981 +    __acc_ua_volatile const acc_uint16e_t* p = ACC_STATIC_CAST(__acc_ua_volatile const acc_uint16e_t*, pp);
  2.3982 +    unsigned long v;
  2.3983 +    __asm__ __volatile__("lhbrx %0,0,%1" : "=r" (v) : "r" (p), "m" (*p));
  2.3984 +    return v;
  2.3985 +}
  2.3986 +#define ACC_UA_GET_LE16(p)      __ACC_UA_GET_LE16(p)
  2.3987 +#endif
  2.3988 +#if !defined(ACC_UA_SET_LE16)
  2.3989 +__acc_static_forceinline
  2.3990 +#if (ACC_CC_CLANG || (ACC_CC_GNUC >= 0x020800ul) || ACC_CC_INTELC_GNUC || ACC_CC_LLVM)
  2.3991 +__attribute__((__unused__))
  2.3992 +#endif
  2.3993 +void __ACC_UA_SET_LE16(__acc_ua_volatile void* pp, unsigned long v) {
  2.3994 +    __acc_ua_volatile acc_uint16e_t* p = ACC_STATIC_CAST(__acc_ua_volatile acc_uint16e_t*, pp);
  2.3995 +    __asm__ __volatile__("sthbrx %2,0,%1" : "=m" (*p) : "r" (p), "r" (v));
  2.3996 +}
  2.3997 +#define ACC_UA_SET_LE16(p,v)    __ACC_UA_SET_LE16(p,v)
  2.3998 +#endif
  2.3999 +#endif
  2.4000 +#endif
  2.4001 +#if !defined(ACC_UA_COPY16)
  2.4002 +#  define ACC_UA_COPY16(d,s)    ACC_UA_SET16(d, ACC_UA_GET16(s))
  2.4003 +#endif
  2.4004 +#endif
  2.4005 +#if (ACC_OPT_UNALIGNED32) && defined(acc_int32e_t)
  2.4006 +#if 0
  2.4007 +#define ACC_UA_GET32(p)         (* (__acc_ua_volatile const acc_uint32e_t*) (__acc_ua_volatile const void*) (p))
  2.4008 +#define ACC_UA_SET32(p,v)       ((* (__acc_ua_volatile acc_uint32e_t*) (__acc_ua_volatile void*) (p)) = (acc_uint32e_t) (v))
  2.4009 +#else
  2.4010 +#define ACC_UA_GET32(p)         (* ACC_STATIC_CAST2(__acc_ua_volatile const acc_uint32e_t*, __acc_ua_volatile const void*, p))
  2.4011 +#define ACC_UA_SET32(p,v)       (* ACC_STATIC_CAST2(__acc_ua_volatile acc_uint32e_t*, __acc_ua_volatile void*, p) = ACC_ITRUNC(acc_uint32e_t, v))
  2.4012 +#endif
  2.4013 +#if (ACC_ABI_BIG_ENDIAN)
  2.4014 +#  define ACC_UA_GET_BE32(p)    ACC_UA_GET32(p)
  2.4015 +#  define ACC_UA_SET_BE32(p,v)  ACC_UA_SET32(p,v)
  2.4016 +#elif (ACC_ABI_LITTLE_ENDIAN)
  2.4017 +#  define ACC_UA_GET_LE32(p)    ACC_UA_GET32(p)
  2.4018 +#  define ACC_UA_SET_LE32(p,v)  ACC_UA_SET32(p,v)
  2.4019 +#endif
  2.4020 +#if (__acc_HAVE_forceinline)
  2.4021 +#if (ACC_ARCH_POWERPC && ACC_ABI_BIG_ENDIAN) && (ACC_ASM_SYNTAX_GNUC) && (ACC_CC_GNUC)
  2.4022 +#if !defined(ACC_UA_GET_LE32)
  2.4023 +__acc_static_forceinline
  2.4024 +#if (ACC_CC_CLANG || (ACC_CC_GNUC >= 0x020800ul) || ACC_CC_INTELC_GNUC || ACC_CC_LLVM)
  2.4025 +__attribute__((__unused__))
  2.4026 +#endif
  2.4027 +unsigned long __ACC_UA_GET_LE32(__acc_ua_volatile const void* pp) {
  2.4028 +    __acc_ua_volatile const acc_uint32e_t* p = ACC_STATIC_CAST(__acc_ua_volatile const acc_uint32e_t*, pp);
  2.4029 +    unsigned long v;
  2.4030 +    __asm__ __volatile__("lwbrx %0,0,%1" : "=r" (v) : "r" (p), "m" (*p));
  2.4031 +    return v;
  2.4032 +}
  2.4033 +#define ACC_UA_GET_LE32(p)      __ACC_UA_GET_LE32(p)
  2.4034 +#endif
  2.4035 +#if !defined(ACC_UA_SET_LE32)
  2.4036 +__acc_static_forceinline
  2.4037 +#if (ACC_CC_CLANG || (ACC_CC_GNUC >= 0x020800ul) || ACC_CC_INTELC_GNUC || ACC_CC_LLVM)
  2.4038 +__attribute__((__unused__))
  2.4039 +#endif
  2.4040 +void __ACC_UA_SET_LE32(__acc_ua_volatile void* pp, unsigned long v) {
  2.4041 +    __acc_ua_volatile acc_uint32e_t* p = ACC_STATIC_CAST(__acc_ua_volatile acc_uint32e_t*, pp);
  2.4042 +    __asm__ __volatile__("stwbrx %2,0,%1" : "=m" (*p) : "r" (p), "r" (v));
  2.4043 +}
  2.4044 +#define ACC_UA_SET_LE32(p,v)    __ACC_UA_SET_LE32(p,v)
  2.4045 +#endif
  2.4046 +#endif
  2.4047 +#endif
  2.4048 +#if !defined(ACC_UA_COPY32)
  2.4049 +#  define ACC_UA_COPY32(d,s)    ACC_UA_SET32(d, ACC_UA_GET32(s))
  2.4050 +#endif
  2.4051 +#endif
  2.4052 +#if (ACC_OPT_UNALIGNED64) && defined(acc_int64l_t)
  2.4053 +#if 0
  2.4054 +#define ACC_UA_GET64(p)         (* (__acc_ua_volatile const acc_uint64l_t*) (__acc_ua_volatile const void*) (p))
  2.4055 +#define ACC_UA_SET64(p,v)       ((* (__acc_ua_volatile acc_uint64l_t*) (__acc_ua_volatile void*) (p)) = (acc_uint64l_t) (v))
  2.4056 +#else
  2.4057 +#define ACC_UA_GET64(p)         (* ACC_STATIC_CAST2(__acc_ua_volatile const acc_uint64l_t*, __acc_ua_volatile const void*, p))
  2.4058 +#define ACC_UA_SET64(p,v)       (* ACC_STATIC_CAST2(__acc_ua_volatile acc_uint64l_t*, __acc_ua_volatile void*, p) = ACC_ITRUNC(acc_uint64l_t, v))
  2.4059 +#endif
  2.4060 +#if (ACC_ABI_BIG_ENDIAN)
  2.4061 +#  define ACC_UA_GET_BE64(p)    ACC_UA_GET64(p)
  2.4062 +#  define ACC_UA_SET_BE64(p,v)  ACC_UA_SET64(p,v)
  2.4063 +#elif (ACC_ABI_LITTLE_ENDIAN)
  2.4064 +#  define ACC_UA_GET_LE64(p)    ACC_UA_GET64(p)
  2.4065 +#  define ACC_UA_SET_LE64(p,v)  ACC_UA_SET64(p,v)
  2.4066 +#endif
  2.4067 +#if !defined(ACC_UA_COPY64)
  2.4068 +#  define ACC_UA_COPY64(d,s)    ACC_UA_SET64(d, ACC_UA_GET64(s))
  2.4069 +#endif
  2.4070 +#endif
  2.4071 +#  endif
  2.4072 +#endif
  2.4073 +#endif
  2.4074 +#endif
  2.4075 +#if defined(ACC_WANT_ACC_TYPE_H)
  2.4076 +#  undef ACC_WANT_ACC_TYPE_H
  2.4077 +#  if (ACC_CFG_SKIP_ACC_TYPES)
  2.4078 +#    error "ACC_WANT_ACC_TYPE_H with ACC_CFG_SKIP_ACC_TYPES"
  2.4079 +#  endif
  2.4080 +#if (!(ACC_SIZEOF_SHORT+0 > 0 && ACC_SIZEOF_INT+0 > 0 && ACC_SIZEOF_LONG+0 > 0))
  2.4081 +#  error "missing defines for sizes"
  2.4082 +#endif
  2.4083 +#if (!(ACC_SIZEOF_PTRDIFF_T+0 > 0 && ACC_SIZEOF_SIZE_T+0 > 0 && ACC_SIZEOF_VOID_P+0 > 0))
  2.4084 +#  error "missing defines for sizes"
  2.4085 +#endif
  2.4086 +#define ACC_TYPEOF_CHAR             1u
  2.4087 +#define ACC_TYPEOF_SHORT            2u
  2.4088 +#define ACC_TYPEOF_INT              3u
  2.4089 +#define ACC_TYPEOF_LONG             4u
  2.4090 +#define ACC_TYPEOF_LONG_LONG        5u
  2.4091 +#define ACC_TYPEOF___INT8           17u
  2.4092 +#define ACC_TYPEOF___INT16          18u
  2.4093 +#define ACC_TYPEOF___INT32          19u
  2.4094 +#define ACC_TYPEOF___INT64          20u
  2.4095 +#define ACC_TYPEOF___INT128         21u
  2.4096 +#define ACC_TYPEOF___INT256         22u
  2.4097 +#define ACC_TYPEOF___MODE_QI        33u
  2.4098 +#define ACC_TYPEOF___MODE_HI        34u
  2.4099 +#define ACC_TYPEOF___MODE_SI        35u
  2.4100 +#define ACC_TYPEOF___MODE_DI        36u
  2.4101 +#define ACC_TYPEOF___MODE_TI        37u
  2.4102 +#define ACC_TYPEOF_CHAR_P           129u
  2.4103 +#if !defined(acc_llong_t)
  2.4104 +#if (ACC_SIZEOF_LONG_LONG+0 > 0)
  2.4105 +#  if !(ACC_LANG_ASSEMBLER)
  2.4106 +   __acc_gnuc_extension__ typedef long long acc_llong_t__;
  2.4107 +   __acc_gnuc_extension__ typedef unsigned long long acc_ullong_t__;
  2.4108 +#  endif
  2.4109 +#  define acc_llong_t               acc_llong_t__
  2.4110 +#  define acc_ullong_t              acc_ullong_t__
  2.4111 +#endif
  2.4112 +#endif
  2.4113 +#if !defined(acc_int16e_t)
  2.4114 +#if (ACC_CFG_PREFER_TYPEOF_ACC_INT16E_T == ACC_TYPEOF_SHORT) && (ACC_SIZEOF_SHORT != 2)
  2.4115 +#  undef ACC_CFG_PREFER_TYPEOF_ACC_INT16E_T
  2.4116 +#endif
  2.4117 +#if (ACC_SIZEOF_LONG == 2) && !(ACC_CFG_PREFER_TYPEOF_ACC_INT16E_T == ACC_TYPEOF_SHORT)
  2.4118 +#  define acc_int16e_t              long
  2.4119 +#  define acc_uint16e_t             unsigned long
  2.4120 +#  define ACC_TYPEOF_ACC_INT16E_T   ACC_TYPEOF_LONG
  2.4121 +#elif (ACC_SIZEOF_INT == 2) && !(ACC_CFG_PREFER_TYPEOF_ACC_INT16E_T == ACC_TYPEOF_SHORT)
  2.4122 +#  define acc_int16e_t              int
  2.4123 +#  define acc_uint16e_t             unsigned int
  2.4124 +#  define ACC_TYPEOF_ACC_INT16E_T   ACC_TYPEOF_INT
  2.4125 +#elif (ACC_SIZEOF_SHORT == 2)
  2.4126 +#  define acc_int16e_t              short int
  2.4127 +#  define acc_uint16e_t             unsigned short int
  2.4128 +#  define ACC_TYPEOF_ACC_INT16E_T   ACC_TYPEOF_SHORT
  2.4129 +#elif 1 && !(ACC_CFG_TYPE_NO_MODE_HI) && (ACC_CC_CLANG || (ACC_CC_GNUC >= 0x025f00ul) || ACC_CC_LLVM)
  2.4130 +#  if !(ACC_LANG_ASSEMBLER)
  2.4131 +   typedef int acc_int16e_hi_t__ __attribute__((__mode__(__HI__)));
  2.4132 +   typedef unsigned int acc_uint16e_hi_t__ __attribute__((__mode__(__HI__)));
  2.4133 +#  endif
  2.4134 +#  define acc_int16e_t              acc_int16e_hi_t__
  2.4135 +#  define acc_uint16e_t             acc_uint16e_hi_t__
  2.4136 +#  define ACC_TYPEOF_ACC_INT16E_T   ACC_TYPEOF___MODE_HI
  2.4137 +#elif (ACC_SIZEOF___INT16 == 2)
  2.4138 +#  define acc_int16e_t              __int16
  2.4139 +#  define acc_uint16e_t             unsigned __int16
  2.4140 +#  define ACC_TYPEOF_ACC_INT16E_T   ACC_TYPEOF___INT16
  2.4141 +#else
  2.4142 +#endif
  2.4143 +#endif
  2.4144 +#if defined(acc_int16e_t)
  2.4145 +#  define ACC_SIZEOF_ACC_INT16E_T   2
  2.4146 +   ACC_COMPILE_TIME_ASSERT_HEADER(sizeof(acc_int16e_t) == 2)
  2.4147 +   ACC_COMPILE_TIME_ASSERT_HEADER(sizeof(acc_int16e_t) == ACC_SIZEOF_ACC_INT16E_T)
  2.4148 +#endif
  2.4149 +#if !defined(acc_int32e_t)
  2.4150 +#if (ACC_CFG_PREFER_TYPEOF_ACC_INT32E_T == ACC_TYPEOF_INT) && (ACC_SIZEOF_INT != 4)
  2.4151 +#  undef ACC_CFG_PREFER_TYPEOF_ACC_INT32E_T
  2.4152 +#endif
  2.4153 +#if (ACC_SIZEOF_LONG == 4) && !(ACC_CFG_PREFER_TYPEOF_ACC_INT32E_T == ACC_TYPEOF_INT)
  2.4154 +#  define acc_int32e_t              long int
  2.4155 +#  define acc_uint32e_t             unsigned long int
  2.4156 +#  define ACC_TYPEOF_ACC_INT32E_T   ACC_TYPEOF_LONG
  2.4157 +#elif (ACC_SIZEOF_INT == 4)
  2.4158 +#  define acc_int32e_t              int
  2.4159 +#  define acc_uint32e_t             unsigned int
  2.4160 +#  define ACC_TYPEOF_ACC_INT32E_T   ACC_TYPEOF_INT
  2.4161 +#elif (ACC_SIZEOF_SHORT == 4)
  2.4162 +#  define acc_int32e_t              short int
  2.4163 +#  define acc_uint32e_t             unsigned short int
  2.4164 +#  define ACC_TYPEOF_ACC_INT32E_T   ACC_TYPEOF_SHORT
  2.4165 +#elif (ACC_SIZEOF_LONG_LONG == 4)
  2.4166 +#  define acc_int32e_t              acc_llong_t
  2.4167 +#  define acc_uint32e_t             acc_ullong_t
  2.4168 +#  define ACC_TYPEOF_ACC_INT32E_T   ACC_TYPEOF_LONG_LONG
  2.4169 +#elif 1 && !(ACC_CFG_TYPE_NO_MODE_SI) && (ACC_CC_CLANG || (ACC_CC_GNUC >= 0x025f00ul) || ACC_CC_LLVM) && (__INT_MAX__+0 > 2147483647L)
  2.4170 +#  if !(ACC_LANG_ASSEMBLER)
  2.4171 +   typedef int acc_int32e_si_t__ __attribute__((__mode__(__SI__)));
  2.4172 +   typedef unsigned int acc_uint32e_si_t__ __attribute__((__mode__(__SI__)));
  2.4173 +#  endif
  2.4174 +#  define acc_int32e_t              acc_int32e_si_t__
  2.4175 +#  define acc_uint32e_t             acc_uint32e_si_t__
  2.4176 +#  define ACC_TYPEOF_ACC_INT32E_T   ACC_TYPEOF___MODE_SI
  2.4177 +#elif 1 && !(ACC_CFG_TYPE_NO_MODE_SI) && (ACC_CC_GNUC >= 0x025f00ul) && defined(__AVR__) && (__LONG_MAX__+0 == 32767L)
  2.4178 +#  if !(ACC_LANG_ASSEMBLER)
  2.4179 +   typedef int acc_int32e_si_t__ __attribute__((__mode__(__SI__)));
  2.4180 +   typedef unsigned int acc_uint32e_si_t__ __attribute__((__mode__(__SI__)));
  2.4181 +#  endif
  2.4182 +#  define acc_int32e_t              acc_int32e_si_t__
  2.4183 +#  define acc_uint32e_t             acc_uint32e_si_t__
  2.4184 +#  define ACC_INT32_C(c)            (c##LL)
  2.4185 +#  define ACC_UINT32_C(c)           (c##ULL)
  2.4186 +#  define ACC_TYPEOF_ACC_INT32E_T   ACC_TYPEOF___MODE_SI
  2.4187 +#elif (ACC_SIZEOF___INT32 == 4)
  2.4188 +#  define acc_int32e_t              __int32
  2.4189 +#  define acc_uint32e_t             unsigned __int32
  2.4190 +#  define ACC_TYPEOF_ACC_INT32E_T   ACC_TYPEOF___INT32
  2.4191 +#else
  2.4192 +#endif
  2.4193 +#endif
  2.4194 +#if defined(acc_int32e_t)
  2.4195 +#  define ACC_SIZEOF_ACC_INT32E_T   4
  2.4196 +   ACC_COMPILE_TIME_ASSERT_HEADER(sizeof(acc_int32e_t) == 4)
  2.4197 +   ACC_COMPILE_TIME_ASSERT_HEADER(sizeof(acc_int32e_t) == ACC_SIZEOF_ACC_INT32E_T)
  2.4198 +#endif
  2.4199 +#if !defined(acc_int64e_t)
  2.4200 +#if (ACC_SIZEOF___INT64 == 8)
  2.4201 +#  if (ACC_CC_BORLANDC) && !defined(ACC_CFG_PREFER_TYPEOF_ACC_INT64E_T)
  2.4202 +#    define ACC_CFG_PREFER_TYPEOF_ACC_INT64E_T  ACC_TYPEOF___INT64
  2.4203 +#  endif
  2.4204 +#endif
  2.4205 +#if (ACC_CFG_PREFER_TYPEOF_ACC_INT64E_T == ACC_TYPEOF_LONG_LONG) && (ACC_SIZEOF_LONG_LONG != 8)
  2.4206 +#  undef ACC_CFG_PREFER_TYPEOF_ACC_INT64E_T
  2.4207 +#endif
  2.4208 +#if (ACC_CFG_PREFER_TYPEOF_ACC_INT64E_T == ACC_TYPEOF___INT64) && (ACC_SIZEOF___INT64 != 8)
  2.4209 +#  undef ACC_CFG_PREFER_TYPEOF_ACC_INT64E_T
  2.4210 +#endif
  2.4211 +#if (ACC_SIZEOF_INT == 8) && (ACC_SIZEOF_INT < ACC_SIZEOF_LONG)
  2.4212 +#  define acc_int64e_t              int
  2.4213 +#  define acc_uint64e_t             unsigned int
  2.4214 +#  define ACC_TYPEOF_ACC_INT64E_T   ACC_TYPEOF_INT
  2.4215 +#elif (ACC_SIZEOF_LONG == 8) && !(ACC_CFG_PREFER_TYPEOF_ACC_INT64E_T == ACC_TYPEOF_LONG_LONG) && !(ACC_CFG_PREFER_TYPEOF_ACC_INT64E_T == ACC_TYPEOF___INT64)
  2.4216 +#  define acc_int64e_t              long int
  2.4217 +#  define acc_uint64e_t             unsigned long int
  2.4218 +#  define ACC_TYPEOF_ACC_INT64E_T   ACC_TYPEOF_LONG
  2.4219 +#elif (ACC_SIZEOF_LONG_LONG == 8) && !(ACC_CFG_PREFER_TYPEOF_ACC_INT64E_T == ACC_TYPEOF___INT64)
  2.4220 +#  define acc_int64e_t              acc_llong_t
  2.4221 +#  define acc_uint64e_t             acc_ullong_t
  2.4222 +#  define ACC_TYPEOF_ACC_INT64E_T   ACC_TYPEOF_LONG_LONG
  2.4223 +#  if (ACC_CC_BORLANDC)
  2.4224 +#    define ACC_INT64_C(c)          ((c) + 0ll)
  2.4225 +#    define ACC_UINT64_C(c)         ((c) + 0ull)
  2.4226 +#  elif 0
  2.4227 +#    define ACC_INT64_C(c)          (__acc_gnuc_extension__ (c##LL))
  2.4228 +#    define ACC_UINT64_C(c)         (__acc_gnuc_extension__ (c##ULL))
  2.4229 +#  else
  2.4230 +#    define ACC_INT64_C(c)          (c##LL)
  2.4231 +#    define ACC_UINT64_C(c)         (c##ULL)
  2.4232 +#  endif
  2.4233 +#elif (ACC_SIZEOF___INT64 == 8)
  2.4234 +#  define acc_int64e_t              __int64
  2.4235 +#  define acc_uint64e_t             unsigned __int64
  2.4236 +#  define ACC_TYPEOF_ACC_INT64E_T   ACC_TYPEOF___INT64
  2.4237 +#  if (ACC_CC_BORLANDC)
  2.4238 +#    define ACC_INT64_C(c)          ((c) + 0i64)
  2.4239 +#    define ACC_UINT64_C(c)         ((c) + 0ui64)
  2.4240 +#  else
  2.4241 +#    define ACC_INT64_C(c)          (c##i64)
  2.4242 +#    define ACC_UINT64_C(c)         (c##ui64)
  2.4243 +#  endif
  2.4244 +#else
  2.4245 +#endif
  2.4246 +#endif
  2.4247 +#if defined(acc_int64e_t)
  2.4248 +#  define ACC_SIZEOF_ACC_INT64E_T   8
  2.4249 +   ACC_COMPILE_TIME_ASSERT_HEADER(sizeof(acc_int64e_t) == 8)
  2.4250 +   ACC_COMPILE_TIME_ASSERT_HEADER(sizeof(acc_int64e_t) == ACC_SIZEOF_ACC_INT64E_T)
  2.4251 +#endif
  2.4252 +#if !defined(acc_int32l_t)
  2.4253 +#if defined(acc_int32e_t)
  2.4254 +#  define acc_int32l_t              acc_int32e_t
  2.4255 +#  define acc_uint32l_t             acc_uint32e_t
  2.4256 +#  define ACC_SIZEOF_ACC_INT32L_T   ACC_SIZEOF_ACC_INT32E_T
  2.4257 +#  define ACC_TYPEOF_ACC_INT32L_T   ACC_TYPEOF_ACC_INT32E_T
  2.4258 +#elif (ACC_SIZEOF_INT >= 4) && (ACC_SIZEOF_INT < ACC_SIZEOF_LONG)
  2.4259 +#  define acc_int32l_t              int
  2.4260 +#  define acc_uint32l_t             unsigned int
  2.4261 +#  define ACC_SIZEOF_ACC_INT32L_T   ACC_SIZEOF_INT
  2.4262 +#  define ACC_TYPEOF_ACC_INT32L_T   ACC_SIZEOF_INT
  2.4263 +#elif (ACC_SIZEOF_LONG >= 4)
  2.4264 +#  define acc_int32l_t              long int
  2.4265 +#  define acc_uint32l_t             unsigned long int
  2.4266 +#  define ACC_SIZEOF_ACC_INT32L_T   ACC_SIZEOF_LONG
  2.4267 +#  define ACC_TYPEOF_ACC_INT32L_T   ACC_SIZEOF_LONG
  2.4268 +#else
  2.4269 +#  error "acc_int32l_t"
  2.4270 +#endif
  2.4271 +#endif
  2.4272 +#if 1
  2.4273 +   ACC_COMPILE_TIME_ASSERT_HEADER(sizeof(acc_int32l_t) >= 4)
  2.4274 +   ACC_COMPILE_TIME_ASSERT_HEADER(sizeof(acc_int32l_t) == ACC_SIZEOF_ACC_INT32L_T)
  2.4275 +#endif
  2.4276 +#if !defined(acc_int64l_t)
  2.4277 +#if defined(acc_int64e_t)
  2.4278 +#  define acc_int64l_t              acc_int64e_t
  2.4279 +#  define acc_uint64l_t             acc_uint64e_t
  2.4280 +#  define ACC_SIZEOF_ACC_INT64L_T   ACC_SIZEOF_ACC_INT64E_T
  2.4281 +#  define ACC_TYPEOF_ACC_INT64L_T   ACC_TYPEOF_ACC_INT64E_T
  2.4282 +#else
  2.4283 +#endif
  2.4284 +#endif
  2.4285 +#if defined(acc_int64l_t)
  2.4286 +   ACC_COMPILE_TIME_ASSERT_HEADER(sizeof(acc_int64l_t) >= 8)
  2.4287 +   ACC_COMPILE_TIME_ASSERT_HEADER(sizeof(acc_int64l_t) == ACC_SIZEOF_ACC_INT64L_T)
  2.4288 +#endif
  2.4289 +#if !defined(acc_int32f_t)
  2.4290 +#if (ACC_SIZEOF_SIZE_T >= 8)
  2.4291 +#  define acc_int32f_t              acc_int64l_t
  2.4292 +#  define acc_uint32f_t             acc_uint64l_t
  2.4293 +#  define ACC_SIZEOF_ACC_INT32F_T   ACC_SIZEOF_ACC_INT64L_T
  2.4294 +#  define ACC_TYPEOF_ACC_INT32F_T   ACC_TYPEOF_ACC_INT64L_T
  2.4295 +#else
  2.4296 +#  define acc_int32f_t              acc_int32l_t
  2.4297 +#  define acc_uint32f_t             acc_uint32l_t
  2.4298 +#  define ACC_SIZEOF_ACC_INT32F_T   ACC_SIZEOF_ACC_INT32L_T
  2.4299 +#  define ACC_TYPEOF_ACC_INT32F_T   ACC_TYPEOF_ACC_INT32L_T
  2.4300 +#endif
  2.4301 +#endif
  2.4302 +#if 1
  2.4303 +   ACC_COMPILE_TIME_ASSERT_HEADER(sizeof(acc_int32f_t) >= 4)
  2.4304 +   ACC_COMPILE_TIME_ASSERT_HEADER(sizeof(acc_int32f_t) == ACC_SIZEOF_ACC_INT32F_T)
  2.4305 +#endif
  2.4306 +#if !defined(acc_int64f_t)
  2.4307 +#if defined(acc_int64l_t)
  2.4308 +#  define acc_int64f_t              acc_int64l_t
  2.4309 +#  define acc_uint64f_t             acc_uint64l_t
  2.4310 +#  define ACC_SIZEOF_ACC_INT64F_T   ACC_SIZEOF_ACC_INT64L_T
  2.4311 +#  define ACC_TYPEOF_ACC_INT64F_T   ACC_TYPEOF_ACC_INT64L_T
  2.4312 +#else
  2.4313 +#endif
  2.4314 +#endif
  2.4315 +#if defined(acc_int64f_t)
  2.4316 +   ACC_COMPILE_TIME_ASSERT_HEADER(sizeof(acc_int64f_t) >= 8)
  2.4317 +   ACC_COMPILE_TIME_ASSERT_HEADER(sizeof(acc_int64f_t) == ACC_SIZEOF_ACC_INT64F_T)
  2.4318 +#endif
  2.4319 +#if !defined(acc_intptr_t)
  2.4320 +#if 1 && (ACC_OS_OS400 && (ACC_SIZEOF_VOID_P == 16))
  2.4321 +#  define __ACC_INTPTR_T_IS_POINTER 1
  2.4322 +#  if !(ACC_LANG_ASSEMBLER)
  2.4323 +   typedef char *                   acc_intptr_t;
  2.4324 +   typedef char *                   acc_uintptr_t;
  2.4325 +#  endif
  2.4326 +#  define acc_intptr_t              acc_intptr_t
  2.4327 +#  define acc_uintptr_t             acc_uintptr_t
  2.4328 +#  define ACC_SIZEOF_ACC_INTPTR_T   ACC_SIZEOF_VOID_P
  2.4329 +#  define ACC_TYPEOF_ACC_INTPTR_T   ACC_TYPEOF_CHAR_P
  2.4330 +#elif (ACC_CC_MSC && (_MSC_VER >= 1300) && (ACC_SIZEOF_VOID_P == 4) && (ACC_SIZEOF_INT == 4))
  2.4331 +#  if !(ACC_LANG_ASSEMBLER)
  2.4332 +   typedef __w64 int                acc_intptr_t;
  2.4333 +   typedef __w64 unsigned int       acc_uintptr_t;
  2.4334 +#  endif
  2.4335 +#  define acc_intptr_t              acc_intptr_t
  2.4336 +#  define acc_uintptr_t             acc_uintptr_t
  2.4337 +#  define ACC_SIZEOF_ACC_INTPTR_T   ACC_SIZEOF_INT
  2.4338 +#  define ACC_TYPEOF_ACC_INTPTR_T   ACC_TYPEOF_INT
  2.4339 +#elif (ACC_SIZEOF_SHORT == ACC_SIZEOF_VOID_P) && (ACC_SIZEOF_INT > ACC_SIZEOF_VOID_P)
  2.4340 +#  define acc_intptr_t              short
  2.4341 +#  define acc_uintptr_t             unsigned short
  2.4342 +#  define ACC_SIZEOF_ACC_INTPTR_T   ACC_SIZEOF_SHORT
  2.4343 +#  define ACC_TYPEOF_ACC_INTPTR_T   ACC_TYPEOF_SHORT
  2.4344 +#elif (ACC_SIZEOF_INT >= ACC_SIZEOF_VOID_P) && (ACC_SIZEOF_INT < ACC_SIZEOF_LONG)
  2.4345 +#  define acc_intptr_t              int
  2.4346 +#  define acc_uintptr_t             unsigned int
  2.4347 +#  define ACC_SIZEOF_ACC_INTPTR_T   ACC_SIZEOF_INT
  2.4348 +#  define ACC_TYPEOF_ACC_INTPTR_T   ACC_TYPEOF_INT
  2.4349 +#elif (ACC_SIZEOF_LONG >= ACC_SIZEOF_VOID_P)
  2.4350 +#  define acc_intptr_t              long
  2.4351 +#  define acc_uintptr_t             unsigned long
  2.4352 +#  define ACC_SIZEOF_ACC_INTPTR_T   ACC_SIZEOF_LONG
  2.4353 +#  define ACC_TYPEOF_ACC_INTPTR_T   ACC_TYPEOF_LONG
  2.4354 +#elif (ACC_SIZEOF_ACC_INT64L_T >= ACC_SIZEOF_VOID_P)
  2.4355 +#  define acc_intptr_t              acc_int64l_t
  2.4356 +#  define acc_uintptr_t             acc_uint64l_t
  2.4357 +#  define ACC_SIZEOF_ACC_INTPTR_T   ACC_SIZEOF_ACC_INT64L_T
  2.4358 +#  define ACC_TYPEOF_ACC_INTPTR_T   ACC_TYPEOF_ACC_INT64L_T
  2.4359 +#else
  2.4360 +#  error "acc_intptr_t"
  2.4361 +#endif
  2.4362 +#endif
  2.4363 +#if 1
  2.4364 +    ACC_COMPILE_TIME_ASSERT_HEADER(sizeof(acc_intptr_t) >= sizeof(void *))
  2.4365 +    ACC_COMPILE_TIME_ASSERT_HEADER(sizeof(acc_intptr_t) == sizeof(acc_uintptr_t))
  2.4366 +#endif
  2.4367 +#if !defined(acc_word_t)
  2.4368 +#if defined(ACC_WORDSIZE) && (ACC_WORDSIZE+0 > 0)
  2.4369 +#if (ACC_WORDSIZE == ACC_SIZEOF_ACC_INTPTR_T) && !(__ACC_INTPTR_T_IS_POINTER)
  2.4370 +#  define acc_word_t                acc_uintptr_t
  2.4371 +#  define acc_sword_t               acc_intptr_t
  2.4372 +#  define ACC_SIZEOF_ACC_WORD_T     ACC_SIZEOF_ACC_INTPTR_T
  2.4373 +#  define ACC_TYPEOF_ACC_WORD_T     ACC_TYPEOF_ACC_INTPTR_T
  2.4374 +#elif (ACC_WORDSIZE == ACC_SIZEOF_LONG)
  2.4375 +#  define acc_word_t                unsigned long
  2.4376 +#  define acc_sword_t               long
  2.4377 +#  define ACC_SIZEOF_ACC_WORD_T     ACC_SIZEOF_LONG
  2.4378 +#  define ACC_TYPEOF_ACC_WORD_T     ACC_TYPEOF_LONG
  2.4379 +#elif (ACC_WORDSIZE == ACC_SIZEOF_INT)
  2.4380 +#  define acc_word_t                unsigned int
  2.4381 +#  define acc_sword_t               int
  2.4382 +#  define ACC_SIZEOF_ACC_WORD_T     ACC_SIZEOF_INT
  2.4383 +#  define ACC_TYPEOF_ACC_WORD_T     ACC_TYPEOF_INT
  2.4384 +#elif (ACC_WORDSIZE == ACC_SIZEOF_SHORT)
  2.4385 +#  define acc_word_t                unsigned short
  2.4386 +#  define acc_sword_t               short
  2.4387 +#  define ACC_SIZEOF_ACC_WORD_T     ACC_SIZEOF_SHORT
  2.4388 +#  define ACC_TYPEOF_ACC_WORD_T     ACC_TYPEOF_SHORT
  2.4389 +#elif (ACC_WORDSIZE == 1)
  2.4390 +#  define acc_word_t                unsigned char
  2.4391 +#  define acc_sword_t               signed char
  2.4392 +#  define ACC_SIZEOF_ACC_WORD_T     1
  2.4393 +#  define ACC_TYPEOF_ACC_WORD_T     ACC_TYPEOF_CHAR
  2.4394 +#elif (ACC_WORDSIZE == ACC_SIZEOF_ACC_INT64L_T)
  2.4395 +#  define acc_word_t                acc_uint64l_t
  2.4396 +#  define acc_sword_t               acc_int64l_t
  2.4397 +#  define ACC_SIZEOF_ACC_WORD_T     ACC_SIZEOF_ACC_INT64L_T
  2.4398 +#  define ACC_TYPEOF_ACC_WORD_T     ACC_SIZEOF_ACC_INT64L_T
  2.4399 +#elif (ACC_ARCH_SPU) && (ACC_CC_GNUC)
  2.4400 +#if 0
  2.4401 +#  if !(ACC_LANG_ASSEMBLER)
  2.4402 +   typedef unsigned acc_word_t  __attribute__((__mode__(__V16QI__)));
  2.4403 +   typedef int      acc_sword_t __attribute__((__mode__(__V16QI__)));
  2.4404 +#  endif
  2.4405 +#  define acc_word_t                acc_word_t
  2.4406 +#  define acc_sword_t               acc_sword_t
  2.4407 +#  define ACC_SIZEOF_ACC_WORD_T     16
  2.4408 +#  define ACC_TYPEOF_ACC_WORD_T     ACC_TYPEOF___MODE_V16QI
  2.4409 +#endif
  2.4410 +#else
  2.4411 +#  error "acc_word_t"
  2.4412 +#endif
  2.4413 +#endif
  2.4414 +#endif
  2.4415 +#if 1 && defined(acc_word_t)
  2.4416 +    ACC_COMPILE_TIME_ASSERT_HEADER(sizeof(acc_word_t)  == ACC_WORDSIZE)
  2.4417 +    ACC_COMPILE_TIME_ASSERT_HEADER(sizeof(acc_sword_t) == ACC_WORDSIZE)
  2.4418 +#endif
  2.4419 +#if 1
  2.4420 +#define acc_int8_t                  signed char
  2.4421 +#define acc_uint8_t                 unsigned char
  2.4422 +#define ACC_SIZEOF_ACC_INT8_T       1
  2.4423 +#define ACC_TYPEOF_ACC_INT8_T       ACC_TYPEOF_CHAR
  2.4424 +ACC_COMPILE_TIME_ASSERT_HEADER(sizeof(acc_int8_t) == 1)
  2.4425 +ACC_COMPILE_TIME_ASSERT_HEADER(sizeof(acc_int8_t) == sizeof(acc_uint8_t))
  2.4426 +#endif
  2.4427 +#if defined(acc_int16e_t)
  2.4428 +#define acc_int16_t                 acc_int16e_t
  2.4429 +#define acc_uint16_t                acc_uint16e_t
  2.4430 +#define ACC_SIZEOF_ACC_INT16_T      ACC_SIZEOF_ACC_INT16E_T
  2.4431 +#define ACC_TYPEOF_ACC_INT16_T      ACC_TYPEOF_ACC_INT16E_T
  2.4432 +ACC_COMPILE_TIME_ASSERT_HEADER(sizeof(acc_int16_t) == 2)
  2.4433 +ACC_COMPILE_TIME_ASSERT_HEADER(sizeof(acc_int16_t) == sizeof(acc_uint16_t))
  2.4434 +#endif
  2.4435 +#if defined(acc_int32e_t)
  2.4436 +#define acc_int32_t                 acc_int32e_t
  2.4437 +#define acc_uint32_t                acc_uint32e_t
  2.4438 +#define ACC_SIZEOF_ACC_INT32_T      ACC_SIZEOF_ACC_INT32E_T
  2.4439 +#define ACC_TYPEOF_ACC_INT32_T      ACC_TYPEOF_ACC_INT32E_T
  2.4440 +ACC_COMPILE_TIME_ASSERT_HEADER(sizeof(acc_int32_t) == 4)
  2.4441 +ACC_COMPILE_TIME_ASSERT_HEADER(sizeof(acc_int32_t) == sizeof(acc_uint32_t))
  2.4442 +#endif
  2.4443 +#if defined(acc_int64e_t)
  2.4444 +#define acc_int64_t                 acc_int64e_t
  2.4445 +#define acc_uint64_t                acc_uint64e_t
  2.4446 +#define ACC_SIZEOF_ACC_INT64_T      ACC_SIZEOF_ACC_INT64E_T
  2.4447 +#define ACC_TYPEOF_ACC_INT64_T      ACC_TYPEOF_ACC_INT64E_T
  2.4448 +ACC_COMPILE_TIME_ASSERT_HEADER(sizeof(acc_int64_t) == 8)
  2.4449 +ACC_COMPILE_TIME_ASSERT_HEADER(sizeof(acc_int64_t) == sizeof(acc_uint64_t))
  2.4450 +#endif
  2.4451 +#if 1
  2.4452 +#define acc_int_least32_t           acc_int32l_t
  2.4453 +#define acc_uint_least32_t          acc_uint32l_t
  2.4454 +#define ACC_SIZEOF_ACC_INT_LEAST32_T ACC_SIZEOF_ACC_INT32L_T
  2.4455 +#define ACC_TYPEOF_ACC_INT_LEAST32_T ACC_TYPEOF_ACC_INT32L_T
  2.4456 +ACC_COMPILE_TIME_ASSERT_HEADER(sizeof(acc_int_least32_t) >= 4)
  2.4457 +ACC_COMPILE_TIME_ASSERT_HEADER(sizeof(acc_int_least32_t) == sizeof(acc_uint_least32_t))
  2.4458 +#endif
  2.4459 +#if defined(acc_int64l_t)
  2.4460 +#define acc_int_least64_t           acc_int64l_t
  2.4461 +#define acc_uint_least64_t          acc_uint64l_t
  2.4462 +#define ACC_SIZEOF_ACC_INT_LEAST64_T ACC_SIZEOF_ACC_INT64L_T
  2.4463 +#define ACC_TYPEOF_ACC_INT_LEAST64_T ACC_TYPEOF_ACC_INT64L_T
  2.4464 +ACC_COMPILE_TIME_ASSERT_HEADER(sizeof(acc_int_least64_t) >= 8)
  2.4465 +ACC_COMPILE_TIME_ASSERT_HEADER(sizeof(acc_int_least64_t) == sizeof(acc_uint_least64_t))
  2.4466 +#endif
  2.4467 +#if 1
  2.4468 +#define acc_int_fast32_t           acc_int32f_t
  2.4469 +#define acc_uint_fast32_t          acc_uint32f_t
  2.4470 +#define ACC_SIZEOF_ACC_INT_FAST32_T ACC_SIZEOF_ACC_INT32F_T
  2.4471 +#define ACC_TYPEOF_ACC_INT_FAST32_T ACC_TYPEOF_ACC_INT32F_T
  2.4472 +ACC_COMPILE_TIME_ASSERT_HEADER(sizeof(acc_int_fast32_t) >= 4)
  2.4473 +ACC_COMPILE_TIME_ASSERT_HEADER(sizeof(acc_int_fast32_t) == sizeof(acc_uint_fast32_t))
  2.4474 +#endif
  2.4475 +#if defined(acc_int64f_t)
  2.4476 +#define acc_int_fast64_t           acc_int64f_t
  2.4477 +#define acc_uint_fast64_t          acc_uint64f_t
  2.4478 +#define ACC_SIZEOF_ACC_INT_FAST64_T ACC_SIZEOF_ACC_INT64F_T
  2.4479 +#define ACC_TYPEOF_ACC_INT_FAST64_T ACC_TYPEOF_ACC_INT64F_T
  2.4480 +ACC_COMPILE_TIME_ASSERT_HEADER(sizeof(acc_int_fast64_t) >= 8)
  2.4481 +ACC_COMPILE_TIME_ASSERT_HEADER(sizeof(acc_int_fast64_t) == sizeof(acc_uint_fast64_t))
  2.4482 +#endif
  2.4483 +#if !defined(ACC_INT16_C)
  2.4484 +#  if (ACC_BROKEN_INTEGRAL_CONSTANTS) && (ACC_SIZEOF_INT >= 2)
  2.4485 +#    define ACC_INT16_C(c)          ((c) + 0)
  2.4486 +#    define ACC_UINT16_C(c)         ((c) + 0U)
  2.4487 +#  elif (ACC_BROKEN_INTEGRAL_CONSTANTS) && (ACC_SIZEOF_LONG >= 2)
  2.4488 +#    define ACC_INT16_C(c)          ((c) + 0L)
  2.4489 +#    define ACC_UINT16_C(c)         ((c) + 0UL)
  2.4490 +#  elif (ACC_SIZEOF_INT >= 2)
  2.4491 +#    define ACC_INT16_C(c)          (c)
  2.4492 +#    define ACC_UINT16_C(c)         (c##U)
  2.4493 +#  elif (ACC_SIZEOF_LONG >= 2)
  2.4494 +#    define ACC_INT16_C(c)          (c##L)
  2.4495 +#    define ACC_UINT16_C(c)         (c##UL)
  2.4496 +#  else
  2.4497 +#    error "ACC_INT16_C"
  2.4498 +#  endif
  2.4499 +#endif
  2.4500 +#if !defined(ACC_INT32_C)
  2.4501 +#  if (ACC_BROKEN_INTEGRAL_CONSTANTS) && (ACC_SIZEOF_INT >= 4)
  2.4502 +#    define ACC_INT32_C(c)          ((c) + 0)
  2.4503 +#    define ACC_UINT32_C(c)         ((c) + 0U)
  2.4504 +#  elif (ACC_BROKEN_INTEGRAL_CONSTANTS) && (ACC_SIZEOF_LONG >= 4)
  2.4505 +#    define ACC_INT32_C(c)          ((c) + 0L)
  2.4506 +#    define ACC_UINT32_C(c)         ((c) + 0UL)
  2.4507 +#  elif (ACC_SIZEOF_INT >= 4)
  2.4508 +#    define ACC_INT32_C(c)          (c)
  2.4509 +#    define ACC_UINT32_C(c)         (c##U)
  2.4510 +#  elif (ACC_SIZEOF_LONG >= 4)
  2.4511 +#    define ACC_INT32_C(c)          (c##L)
  2.4512 +#    define ACC_UINT32_C(c)         (c##UL)
  2.4513 +#  elif (ACC_SIZEOF_LONG_LONG >= 4)
  2.4514 +#    define ACC_INT32_C(c)          (c##LL)
  2.4515 +#    define ACC_UINT32_C(c)         (c##ULL)
  2.4516 +#  else
  2.4517 +#    error "ACC_INT32_C"
  2.4518 +#  endif
  2.4519 +#endif
  2.4520 +#if !defined(ACC_INT64_C) && defined(acc_int64l_t)
  2.4521 +#  if (ACC_BROKEN_INTEGRAL_CONSTANTS) && (ACC_SIZEOF_INT >= 8)
  2.4522 +#    define ACC_INT64_C(c)          ((c) + 0)
  2.4523 +#    define ACC_UINT64_C(c)         ((c) + 0U)
  2.4524 +#  elif (ACC_BROKEN_INTEGRAL_CONSTANTS) && (ACC_SIZEOF_LONG >= 8)
  2.4525 +#    define ACC_INT64_C(c)          ((c) + 0L)
  2.4526 +#    define ACC_UINT64_C(c)         ((c) + 0UL)
  2.4527 +#  elif (ACC_SIZEOF_INT >= 8)
  2.4528 +#    define ACC_INT64_C(c)          (c)
  2.4529 +#    define ACC_UINT64_C(c)         (c##U)
  2.4530 +#  elif (ACC_SIZEOF_LONG >= 8)
  2.4531 +#    define ACC_INT64_C(c)          (c##L)
  2.4532 +#    define ACC_UINT64_C(c)         (c##UL)
  2.4533 +#  else
  2.4534 +#    error "ACC_INT64_C"
  2.4535 +#  endif
  2.4536 +#endif
  2.4537 +#if 1 && !defined(acc_signo_t) && defined(__linux__) && defined(__dietlibc__) && (ACC_SIZEOF_INT != 4)
  2.4538 +#  define acc_signo_t               acc_int32e_t
  2.4539 +#endif
  2.4540 +#if !defined(acc_signo_t)
  2.4541 +#  define acc_signo_t               int
  2.4542 +#endif
  2.4543 +#if defined(__cplusplus)
  2.4544 +extern "C" {
  2.4545 +#endif
  2.4546 +#if (ACC_BROKEN_CDECL_ALT_SYNTAX)
  2.4547 +typedef void __acc_cdecl_sighandler (*acc_sighandler_t)(acc_signo_t);
  2.4548 +#elif defined(RETSIGTYPE)
  2.4549 +typedef RETSIGTYPE (__acc_cdecl_sighandler *acc_sighandler_t)(acc_signo_t);
  2.4550 +#else
  2.4551 +typedef void (__acc_cdecl_sighandler *acc_sighandler_t)(acc_signo_t);
  2.4552 +#endif
  2.4553 +#if defined(__cplusplus)
  2.4554 +}
  2.4555 +#endif
  2.4556 +#  if !(ACC_CFG_SKIP_ACC_UA)
  2.4557 +#if !defined(__acc_ua_volatile)
  2.4558 +#  define __acc_ua_volatile     volatile
  2.4559 +#endif
  2.4560 +#if (ACC_CC_GNUC && (ACC_CC_GNUC < 0x020700ul))
  2.4561 +#elif (ACC_CC_GNUC && (ACC_CC_GNUC < 0x020800ul)) && defined(__cplusplus)
  2.4562 +#elif (ACC_CC_INTELC) && defined(_WIN32)
  2.4563 +#elif (ACC_CC_INTELC && (__INTEL_COMPILER < 700))
  2.4564 +#elif (ACC_CC_LLVM)
  2.4565 +#elif (ACC_CC_GNUC || ACC_CC_INTELC || ACC_CC_PATHSCALE)
  2.4566 +#if !defined(__acc_ua16_t) && (ACC_OPT_UNALIGNED16) && defined(acc_int16e_t)
  2.4567 +   typedef struct { __acc_ua_volatile acc_uint16e_t v __attribute__((__packed__)); } __acc_ua16_t;
  2.4568 +#  define __acc_ua16_t __acc_ua16_t
  2.4569 +#endif
  2.4570 +#if !defined(__acc_ua32_t) && (ACC_OPT_UNALIGNED32) && defined(acc_int32e_t)
  2.4571 +   typedef struct { __acc_ua_volatile acc_uint32e_t v __attribute__((__packed__)); } __acc_ua32_t;
  2.4572 +#  define __acc_ua32_t __acc_ua32_t
  2.4573 +#endif
  2.4574 +#if !defined(__acc_ua64_t) && (ACC_OPT_UNALIGNED64) && defined(acc_int64l_t)
  2.4575 +   typedef struct { __acc_ua_volatile acc_uint64l_t v __attribute__((__packed__)); } __acc_ua64_t;
  2.4576 +#  define __acc_ua64_t __acc_ua64_t
  2.4577 +#endif
  2.4578 +#endif
  2.4579 +#if (ACC_OPT_UNALIGNED16) && defined(acc_int16e_t)
  2.4580 +#if 0
  2.4581 +#define ACC_UA_GET16(p)         (* (__acc_ua_volatile const acc_uint16e_t*) (__acc_ua_volatile const void*) (p))
  2.4582 +#define ACC_UA_SET16(p,v)       ((* (__acc_ua_volatile acc_uint16e_t*) (__acc_ua_volatile void*) (p)) = (acc_uint16e_t) (v))
  2.4583 +#else
  2.4584 +#define ACC_UA_GET16(p)         (* ACC_STATIC_CAST2(__acc_ua_volatile const acc_uint16e_t*, __acc_ua_volatile const void*, p))
  2.4585 +#define ACC_UA_SET16(p,v)       (* ACC_STATIC_CAST2(__acc_ua_volatile acc_uint16e_t*, __acc_ua_volatile void*, p) = ACC_ITRUNC(acc_uint16e_t, v))
  2.4586 +#endif
  2.4587 +#if (ACC_ABI_BIG_ENDIAN)
  2.4588 +#  define ACC_UA_GET_BE16(p)    ACC_UA_GET16(p)
  2.4589 +#  define ACC_UA_SET_BE16(p,v)  ACC_UA_SET16(p,v)
  2.4590 +#elif (ACC_ABI_LITTLE_ENDIAN)
  2.4591 +#  define ACC_UA_GET_LE16(p)    ACC_UA_GET16(p)
  2.4592 +#  define ACC_UA_SET_LE16(p,v)  ACC_UA_SET16(p,v)
  2.4593 +#endif
  2.4594 +#if (__acc_HAVE_forceinline)
  2.4595 +#if (ACC_ARCH_POWERPC && ACC_ABI_BIG_ENDIAN) && (ACC_ASM_SYNTAX_GNUC) && (ACC_CC_GNUC)
  2.4596 +#if !defined(ACC_UA_GET_LE16)
  2.4597 +__acc_static_forceinline
  2.4598 +#if (ACC_CC_CLANG || (ACC_CC_GNUC >= 0x020800ul) || ACC_CC_INTELC_GNUC || ACC_CC_LLVM)
  2.4599 +__attribute__((__unused__))
  2.4600 +#endif
  2.4601 +unsigned long __ACC_UA_GET_LE16(__acc_ua_volatile const void* pp) {
  2.4602 +    __acc_ua_volatile const acc_uint16e_t* p = ACC_STATIC_CAST(__acc_ua_volatile const acc_uint16e_t*, pp);
  2.4603 +    unsigned long v;
  2.4604 +    __asm__ __volatile__("lhbrx %0,0,%1" : "=r" (v) : "r" (p), "m" (*p));
  2.4605 +    return v;
  2.4606 +}
  2.4607 +#define ACC_UA_GET_LE16(p)      __ACC_UA_GET_LE16(p)
  2.4608 +#endif
  2.4609 +#if !defined(ACC_UA_SET_LE16)
  2.4610 +__acc_static_forceinline
  2.4611 +#if (ACC_CC_CLANG || (ACC_CC_GNUC >= 0x020800ul) || ACC_CC_INTELC_GNUC || ACC_CC_LLVM)
  2.4612 +__attribute__((__unused__))
  2.4613 +#endif
  2.4614 +void __ACC_UA_SET_LE16(__acc_ua_volatile void* pp, unsigned long v) {
  2.4615 +    __acc_ua_volatile acc_uint16e_t* p = ACC_STATIC_CAST(__acc_ua_volatile acc_uint16e_t*, pp);
  2.4616 +    __asm__ __volatile__("sthbrx %2,0,%1" : "=m" (*p) : "r" (p), "r" (v));
  2.4617 +}
  2.4618 +#define ACC_UA_SET_LE16(p,v)    __ACC_UA_SET_LE16(p,v)
  2.4619 +#endif
  2.4620 +#endif
  2.4621 +#endif
  2.4622 +#if !defined(ACC_UA_COPY16)
  2.4623 +#  define ACC_UA_COPY16(d,s)    ACC_UA_SET16(d, ACC_UA_GET16(s))
  2.4624 +#endif
  2.4625 +#endif
  2.4626 +#if (ACC_OPT_UNALIGNED32) && defined(acc_int32e_t)
  2.4627 +#if 0
  2.4628 +#define ACC_UA_GET32(p)         (* (__acc_ua_volatile const acc_uint32e_t*) (__acc_ua_volatile const void*) (p))
  2.4629 +#define ACC_UA_SET32(p,v)       ((* (__acc_ua_volatile acc_uint32e_t*) (__acc_ua_volatile void*) (p)) = (acc_uint32e_t) (v))
  2.4630 +#else
  2.4631 +#define ACC_UA_GET32(p)         (* ACC_STATIC_CAST2(__acc_ua_volatile const acc_uint32e_t*, __acc_ua_volatile const void*, p))
  2.4632 +#define ACC_UA_SET32(p,v)       (* ACC_STATIC_CAST2(__acc_ua_volatile acc_uint32e_t*, __acc_ua_volatile void*, p) = ACC_ITRUNC(acc_uint32e_t, v))
  2.4633 +#endif
  2.4634 +#if (ACC_ABI_BIG_ENDIAN)
  2.4635 +#  define ACC_UA_GET_BE32(p)    ACC_UA_GET32(p)
  2.4636 +#  define ACC_UA_SET_BE32(p,v)  ACC_UA_SET32(p,v)
  2.4637 +#elif (ACC_ABI_LITTLE_ENDIAN)
  2.4638 +#  define ACC_UA_GET_LE32(p)    ACC_UA_GET32(p)
  2.4639 +#  define ACC_UA_SET_LE32(p,v)  ACC_UA_SET32(p,v)
  2.4640 +#endif
  2.4641 +#if (__acc_HAVE_forceinline)
  2.4642 +#if (ACC_ARCH_POWERPC && ACC_ABI_BIG_ENDIAN) && (ACC_ASM_SYNTAX_GNUC) && (ACC_CC_GNUC)
  2.4643 +#if !defined(ACC_UA_GET_LE32)
  2.4644 +__acc_static_forceinline
  2.4645 +#if (ACC_CC_CLANG || (ACC_CC_GNUC >= 0x020800ul) || ACC_CC_INTELC_GNUC || ACC_CC_LLVM)
  2.4646 +__attribute__((__unused__))
  2.4647 +#endif
  2.4648 +unsigned long __ACC_UA_GET_LE32(__acc_ua_volatile const void* pp) {
  2.4649 +    __acc_ua_volatile const acc_uint32e_t* p = ACC_STATIC_CAST(__acc_ua_volatile const acc_uint32e_t*, pp);
  2.4650 +    unsigned long v;
  2.4651 +    __asm__ __volatile__("lwbrx %0,0,%1" : "=r" (v) : "r" (p), "m" (*p));
  2.4652 +    return v;
  2.4653 +}
  2.4654 +#define ACC_UA_GET_LE32(p)      __ACC_UA_GET_LE32(p)
  2.4655 +#endif
  2.4656 +#if !defined(ACC_UA_SET_LE32)
  2.4657 +__acc_static_forceinline
  2.4658 +#if (ACC_CC_CLANG || (ACC_CC_GNUC >= 0x020800ul) || ACC_CC_INTELC_GNUC || ACC_CC_LLVM)
  2.4659 +__attribute__((__unused__))
  2.4660 +#endif
  2.4661 +void __ACC_UA_SET_LE32(__acc_ua_volatile void* pp, unsigned long v) {
  2.4662 +    __acc_ua_volatile acc_uint32e_t* p = ACC_STATIC_CAST(__acc_ua_volatile acc_uint32e_t*, pp);
  2.4663 +    __asm__ __volatile__("stwbrx %2,0,%1" : "=m" (*p) : "r" (p), "r" (v));
  2.4664 +}
  2.4665 +#define ACC_UA_SET_LE32(p,v)    __ACC_UA_SET_LE32(p,v)
  2.4666 +#endif
  2.4667 +#endif
  2.4668 +#endif
  2.4669 +#if !defined(ACC_UA_COPY32)
  2.4670 +#  define ACC_UA_COPY32(d,s)    ACC_UA_SET32(d, ACC_UA_GET32(s))
  2.4671 +#endif
  2.4672 +#endif
  2.4673 +#if (ACC_OPT_UNALIGNED64) && defined(acc_int64l_t)
  2.4674 +#if 0
  2.4675 +#define ACC_UA_GET64(p)         (* (__acc_ua_volatile const acc_uint64l_t*) (__acc_ua_volatile const void*) (p))
  2.4676 +#define ACC_UA_SET64(p,v)       ((* (__acc_ua_volatile acc_uint64l_t*) (__acc_ua_volatile void*) (p)) = (acc_uint64l_t) (v))
  2.4677 +#else
  2.4678 +#define ACC_UA_GET64(p)         (* ACC_STATIC_CAST2(__acc_ua_volatile const acc_uint64l_t*, __acc_ua_volatile const void*, p))
  2.4679 +#define ACC_UA_SET64(p,v)       (* ACC_STATIC_CAST2(__acc_ua_volatile acc_uint64l_t*, __acc_ua_volatile void*, p) = ACC_ITRUNC(acc_uint64l_t, v))
  2.4680 +#endif
  2.4681 +#if (ACC_ABI_BIG_ENDIAN)
  2.4682 +#  define ACC_UA_GET_BE64(p)    ACC_UA_GET64(p)
  2.4683 +#  define ACC_UA_SET_BE64(p,v)  ACC_UA_SET64(p,v)
  2.4684 +#elif (ACC_ABI_LITTLE_ENDIAN)
  2.4685 +#  define ACC_UA_GET_LE64(p)    ACC_UA_GET64(p)
  2.4686 +#  define ACC_UA_SET_LE64(p,v)  ACC_UA_SET64(p,v)
  2.4687 +#endif
  2.4688 +#if !defined(ACC_UA_COPY64)
  2.4689 +#  define ACC_UA_COPY64(d,s)    ACC_UA_SET64(d, ACC_UA_GET64(s))
  2.4690 +#endif
  2.4691 +#endif
  2.4692 +#  endif
  2.4693 +#endif
  2.4694 +#if defined(ACC_WANT_ACC_INCD_H)
  2.4695 +#  undef ACC_WANT_ACC_INCD_H
  2.4696 +#ifndef __ACC_INCD_H_INCLUDED
  2.4697 +#define __ACC_INCD_H_INCLUDED 1
  2.4698 +#if (ACC_LIBC_NAKED)
  2.4699 +#ifndef __ACC_FALLBACK_STDDEF_H_INCLUDED
  2.4700 +#define __ACC_FALLBACK_STDDEF_H_INCLUDED 1
  2.4701 +#if defined(__PTRDIFF_TYPE__)
  2.4702 +typedef __PTRDIFF_TYPE__ acc_fallback_ptrdiff_t;
  2.4703 +#elif defined(__MIPS_PSX2__)
  2.4704 +typedef int acc_fallback_ptrdiff_t;
  2.4705 +#else
  2.4706 +typedef long acc_fallback_ptrdiff_t;
  2.4707 +#endif
  2.4708 +#if defined(__SIZE_TYPE__)
  2.4709 +typedef __SIZE_TYPE__ acc_fallback_size_t;
  2.4710 +#elif defined(__MIPS_PSX2__)
  2.4711 +typedef unsigned int acc_fallback_size_t;
  2.4712 +#else
  2.4713 +typedef unsigned long acc_fallback_size_t;
  2.4714 +#endif
  2.4715 +#if !defined(ptrdiff_t)
  2.4716 +typedef acc_fallback_ptrdiff_t ptrdiff_t;
  2.4717 +#ifndef _PTRDIFF_T_DEFINED
  2.4718 +#define _PTRDIFF_T_DEFINED 1
  2.4719 +#endif
  2.4720 +#endif
  2.4721 +#if !defined(size_t)
  2.4722 +typedef acc_fallback_size_t size_t;
  2.4723 +#ifndef _SIZE_T_DEFINED
  2.4724 +#define _SIZE_T_DEFINED 1
  2.4725 +#endif
  2.4726 +#endif
  2.4727 +#if !defined(__cplusplus) && !defined(wchar_t)
  2.4728 +typedef unsigned short wchar_t;
  2.4729 +#ifndef _WCHAR_T_DEFINED
  2.4730 +#define _WCHAR_T_DEFINED 1
  2.4731 +#endif
  2.4732 +#endif
  2.4733 +#ifndef NULL
  2.4734 +#if defined(__cplusplus) && defined(__GNUC__) && (__GNUC__ >= 4)
  2.4735 +#define NULL    __null
  2.4736 +#elif defined(__cplusplus)
  2.4737 +#define NULL    0
  2.4738 +#else
  2.4739 +#define NULL    ((void*)0)
  2.4740 +#endif
  2.4741 +#endif
  2.4742 +#ifndef offsetof
  2.4743 +#define offsetof(s,m)   ((size_t)((ptrdiff_t)&(((s*)0)->m)))
  2.4744 +#endif
  2.4745 +#endif
  2.4746 +#elif (ACC_LIBC_FREESTANDING)
  2.4747 +# if defined(HAVE_STDDEF_H) && (HAVE_STDDEF_H+0)
  2.4748 +#  include <stddef.h>
  2.4749 +# endif
  2.4750 +# if defined(HAVE_STDINT_H) && (HAVE_STDINT_H+0)
  2.4751 +#  include <stdint.h>
  2.4752 +# endif
  2.4753 +#elif (ACC_LIBC_MOSTLY_FREESTANDING)
  2.4754 +# if defined(HAVE_STDIO_H) && (HAVE_STDIO_H+0)
  2.4755 +#  include <stdio.h>
  2.4756 +# endif
  2.4757 +# if defined(HAVE_STDDEF_H) && (HAVE_STDDEF_H+0)
  2.4758 +#  include <stddef.h>
  2.4759 +# endif
  2.4760 +# if defined(HAVE_STDINT_H) && (HAVE_STDINT_H+0)
  2.4761 +#  include <stdint.h>
  2.4762 +# endif
  2.4763 +#else
  2.4764 +#include <stdio.h>
  2.4765 +#if defined(HAVE_TIME_H) && (HAVE_TIME_H+0) && defined(__MSL__) && defined(__cplusplus)
  2.4766 +# include <time.h>
  2.4767 +#endif
  2.4768 +#if defined(HAVE_SYS_TYPES_H) && (HAVE_SYS_TYPES_H+0)
  2.4769 +# include <sys/types.h>
  2.4770 +#endif
  2.4771 +#if defined(HAVE_SYS_STAT_H) && (HAVE_SYS_STAT_H+0)
  2.4772 +# include <sys/stat.h>
  2.4773 +#endif
  2.4774 +#if defined(STDC_HEADERS) && (STDC_HEADERS+0)
  2.4775 +# include <stdlib.h>
  2.4776 +#elif defined(HAVE_STDLIB_H) && (HAVE_STDLIB_H+0)
  2.4777 +# include <stdlib.h>
  2.4778 +#endif
  2.4779 +#include <stddef.h>
  2.4780 +#if defined(HAVE_STRING_H) && (HAVE_STRING_H+0)
  2.4781 +# if defined(STDC_HEADERS) && (STDC_HEADERS+0)
  2.4782 +# elif defined(HAVE_MEMORY_H) && (HAVE_MEMORY_H+0)
  2.4783 +#  include <memory.h>
  2.4784 +# endif
  2.4785 +# include <string.h>
  2.4786 +#endif
  2.4787 +#if defined(HAVE_STRINGS_H) && (HAVE_STRINGS_H+0)
  2.4788 +# include <strings.h>
  2.4789 +#endif
  2.4790 +#if defined(HAVE_INTTYPES_H) && (HAVE_INTTYPES_H+0)
  2.4791 +# include <inttypes.h>
  2.4792 +#endif
  2.4793 +#if defined(HAVE_STDINT_H) && (HAVE_STDINT_H+0)
  2.4794 +# include <stdint.h>
  2.4795 +#endif
  2.4796 +#if defined(HAVE_UNISTD_H) && (HAVE_UNISTD_H+0)
  2.4797 +# include <unistd.h>
  2.4798 +#endif
  2.4799 +#endif
  2.4800 +#endif
  2.4801 +#endif
  2.4802 +#if defined(ACC_WANT_ACC_INCE_H)
  2.4803 +#  undef ACC_WANT_ACC_INCE_H
  2.4804 +#ifndef __ACC_INCE_H_INCLUDED
  2.4805 +#define __ACC_INCE_H_INCLUDED 1
  2.4806 +#if (ACC_LIBC_NAKED)
  2.4807 +#elif (ACC_LIBC_FREESTANDING)
  2.4808 +#elif (ACC_LIBC_MOSTLY_FREESTANDING)
  2.4809 +#  if (HAVE_SETJMP_H)
  2.4810 +#    include <setjmp.h>
  2.4811 +#  endif
  2.4812 +#else
  2.4813 +#if (HAVE_STDARG_H)
  2.4814 +#  include <stdarg.h>
  2.4815 +#endif
  2.4816 +#if (HAVE_CTYPE_H)
  2.4817 +#  include <ctype.h>
  2.4818 +#endif
  2.4819 +#if (HAVE_ERRNO_H)
  2.4820 +#  include <errno.h>
  2.4821 +#endif
  2.4822 +#if (HAVE_MALLOC_H)
  2.4823 +#  include <malloc.h>
  2.4824 +#endif
  2.4825 +#if (HAVE_ALLOCA_H)
  2.4826 +#  include <alloca.h>
  2.4827 +#endif
  2.4828 +#if (HAVE_FCNTL_H)
  2.4829 +#  include <fcntl.h>
  2.4830 +#endif
  2.4831 +#if (HAVE_DIRENT_H)
  2.4832 +#  include <dirent.h>
  2.4833 +#endif
  2.4834 +#if (HAVE_SETJMP_H)
  2.4835 +#  include <setjmp.h>
  2.4836 +#endif
  2.4837 +#if (HAVE_SIGNAL_H)
  2.4838 +#  include <signal.h>
  2.4839 +#endif
  2.4840 +#if (TIME_WITH_SYS_TIME)
  2.4841 +#  include <sys/time.h>
  2.4842 +#  include <time.h>
  2.4843 +#elif (HAVE_TIME_H)
  2.4844 +#  include <time.h>
  2.4845 +#endif
  2.4846 +#if (HAVE_UTIME_H)
  2.4847 +#  include <utime.h>
  2.4848 +#elif (HAVE_SYS_UTIME_H)
  2.4849 +#  include <sys/utime.h>
  2.4850 +#endif
  2.4851 +#if (HAVE_IO_H)
  2.4852 +#  include <io.h>
  2.4853 +#endif
  2.4854 +#if (HAVE_DOS_H)
  2.4855 +#  include <dos.h>
  2.4856 +#endif
  2.4857 +#if (HAVE_DIRECT_H)
  2.4858 +#  include <direct.h>
  2.4859 +#endif
  2.4860 +#if (HAVE_SHARE_H)
  2.4861 +#  include <share.h>
  2.4862 +#endif
  2.4863 +#if (ACC_CC_NDPC)
  2.4864 +#  include <os.h>
  2.4865 +#endif
  2.4866 +#if defined(__TOS__) && (defined(__PUREC__) || defined(__TURBOC__))
  2.4867 +#  include <ext.h>
  2.4868 +#endif
  2.4869 +#endif
  2.4870 +#endif
  2.4871 +#endif
  2.4872 +#if defined(ACC_WANT_ACC_INCI_H)
  2.4873 +#  undef ACC_WANT_ACC_INCI_H
  2.4874 +#ifndef __ACC_INCI_H_INCLUDED
  2.4875 +#define __ACC_INCI_H_INCLUDED 1
  2.4876 +#if (ACC_LIBC_NAKED)
  2.4877 +#elif (ACC_LIBC_FREESTANDING)
  2.4878 +#elif (ACC_LIBC_MOSTLY_FREESTANDING)
  2.4879 +#else
  2.4880 +#if (ACC_OS_TOS && (ACC_CC_PUREC || ACC_CC_TURBOC))
  2.4881 +#  include <tos.h>
  2.4882 +#elif (ACC_HAVE_WINDOWS_H)
  2.4883 +#  if 1 && !defined(WIN32_LEAN_AND_MEAN)
  2.4884 +#    define WIN32_LEAN_AND_MEAN 1
  2.4885 +#  endif
  2.4886 +#  if 1 && !defined(_WIN32_WINNT)
  2.4887 +#    define _WIN32_WINNT 0x0400
  2.4888 +#  endif
  2.4889 +#  include <windows.h>
  2.4890 +#  if (ACC_CC_BORLANDC || ACC_CC_TURBOC)
  2.4891 +#    include <dir.h>
  2.4892 +#  endif
  2.4893 +#elif (ACC_OS_DOS16 || ACC_OS_DOS32 || ACC_OS_WIN16)
  2.4894 +#  if (ACC_CC_AZTECC)
  2.4895 +#    include <model.h>
  2.4896 +#    include <stat.h>
  2.4897 +#  elif (ACC_CC_BORLANDC || ACC_CC_TURBOC)
  2.4898 +#    include <alloc.h>
  2.4899 +#    include <dir.h>
  2.4900 +#  elif (ACC_OS_DOS32 && ACC_CC_GNUC) && defined(__DJGPP__)
  2.4901 +#    include <sys/exceptn.h>
  2.4902 +#  elif (ACC_CC_PACIFICC)
  2.4903 +#    include <unixio.h>
  2.4904 +#    include <stat.h>
  2.4905 +#    include <sys.h>
  2.4906 +#  elif (ACC_CC_WATCOMC)
  2.4907 +#    include <i86.h>
  2.4908 +#  endif
  2.4909 +#elif (ACC_OS_OS216)
  2.4910 +#  if (ACC_CC_WATCOMC)
  2.4911 +#    include <i86.h>
  2.4912 +#  endif
  2.4913 +#endif
  2.4914 +#if (HAVE_SYS_MMAN_H)
  2.4915 +#  include <sys/mman.h>
  2.4916 +#endif
  2.4917 +#if (HAVE_SYS_RESOURCE_H)
  2.4918 +#  include <sys/resource.h>
  2.4919 +#endif
  2.4920 +#if (ACC_OS_DOS16 || ACC_OS_OS216 || ACC_OS_WIN16)
  2.4921 +#  if defined(FP_OFF)
  2.4922 +#    define ACC_PTR_FP_OFF(x)   FP_OFF(x)
  2.4923 +#  elif defined(_FP_OFF)
  2.4924 +#    define ACC_PTR_FP_OFF(x)   _FP_OFF(x)
  2.4925 +#  else
  2.4926 +#    define ACC_PTR_FP_OFF(x)   (((const unsigned __far*)&(x))[0])
  2.4927 +#  endif
  2.4928 +#  if defined(FP_SEG)
  2.4929 +#    define ACC_PTR_FP_SEG(x)   FP_SEG(x)
  2.4930 +#  elif defined(_FP_SEG)
  2.4931 +#    define ACC_PTR_FP_SEG(x)   _FP_SEG(x)
  2.4932 +#  else
  2.4933 +#    define ACC_PTR_FP_SEG(x)   (((const unsigned __far*)&(x))[1])
  2.4934 +#  endif
  2.4935 +#  if defined(MK_FP)
  2.4936 +#    define ACC_PTR_MK_FP(s,o)  MK_FP(s,o)
  2.4937 +#  elif defined(_MK_FP)
  2.4938 +#    define ACC_PTR_MK_FP(s,o)  _MK_FP(s,o)
  2.4939 +#  else
  2.4940 +#    define ACC_PTR_MK_FP(s,o)  ((void __far*)(((unsigned long)(s)<<16)+(unsigned)(o)))
  2.4941 +#  endif
  2.4942 +#  if 0
  2.4943 +#    undef ACC_PTR_FP_OFF
  2.4944 +#    undef ACC_PTR_FP_SEG
  2.4945 +#    undef ACC_PTR_MK_FP
  2.4946 +#    define ACC_PTR_FP_OFF(x)   (((const unsigned __far*)&(x))[0])
  2.4947 +#    define ACC_PTR_FP_SEG(x)   (((const unsigned __far*)&(x))[1])
  2.4948 +#    define ACC_PTR_MK_FP(s,o)  ((void __far*)(((unsigned long)(s)<<16)+(unsigned)(o)))
  2.4949 +#  endif
  2.4950 +#endif
  2.4951 +#endif
  2.4952 +#endif
  2.4953 +#endif
  2.4954 +#if defined(ACC_WANT_ACC_LIB_H)
  2.4955 +#  undef ACC_WANT_ACC_LIB_H
  2.4956 +#ifndef __ACC_LIB_H_INCLUDED
  2.4957 +#define __ACC_LIB_H_INCLUDED 1
  2.4958 +#if !defined(__ACCLIB_FUNCNAME)
  2.4959 +#  define __ACCLIB_FUNCNAME(f)  f
  2.4960 +#endif
  2.4961 +#if !defined(ACCLIB_EXTERN)
  2.4962 +#  define ACCLIB_EXTERN(r,f)                extern r __ACCLIB_FUNCNAME(f)
  2.4963 +#endif
  2.4964 +#if !defined(ACCLIB_EXTERN_NOINLINE)
  2.4965 +#  if defined(__acc_noinline)
  2.4966 +#    define ACCLIB_EXTERN_NOINLINE(r,f)     extern __acc_noinline r __ACCLIB_FUNCNAME(f)
  2.4967 +#  else
  2.4968 +#    define ACCLIB_EXTERN_NOINLINE(r,f)     extern r __ACCLIB_FUNCNAME(f)
  2.4969 +#  endif
  2.4970 +#endif
  2.4971 +#if (ACC_SIZEOF_LONG > ACC_SIZEOF_VOID_P)
  2.4972 +#  define acclib_handle_t       long
  2.4973 +#else
  2.4974 +#  define acclib_handle_t       acc_intptr_t
  2.4975 +#endif
  2.4976 +#if 0
  2.4977 +ACCLIB_EXTERN(int, acc_ascii_digit)   (int);
  2.4978 +ACCLIB_EXTERN(int, acc_ascii_islower) (int);
  2.4979 +ACCLIB_EXTERN(int, acc_ascii_isupper) (int);
  2.4980 +ACCLIB_EXTERN(int, acc_ascii_tolower) (int);
  2.4981 +ACCLIB_EXTERN(int, acc_ascii_toupper) (int);
  2.4982 +ACCLIB_EXTERN(int, acc_ascii_utolower) (int);
  2.4983 +ACCLIB_EXTERN(int, acc_ascii_utoupper) (int);
  2.4984 +#endif
  2.4985 +#define acc_ascii_isdigit(c)    ((ACC_ICAST(unsigned, c) - 48) < 10)
  2.4986 +#define acc_ascii_islower(c)    ((ACC_ICAST(unsigned, c) - 97) < 26)
  2.4987 +#define acc_ascii_isupper(c)    ((ACC_ICAST(unsigned, c) - 65) < 26)
  2.4988 +#define acc_ascii_tolower(c)    (ACC_ICAST(int, c) + (acc_ascii_isupper(c) << 5))
  2.4989 +#define acc_ascii_toupper(c)    (ACC_ICAST(int, c) - (acc_ascii_islower(c) << 5))
  2.4990 +#define acc_ascii_utolower(c)   acc_ascii_tolower(ACC_ITRUNC(unsigned char, c))
  2.4991 +#define acc_ascii_utoupper(c)   acc_ascii_toupper(ACC_ITRUNC(unsigned char, c))
  2.4992 +#ifndef acc_hsize_t
  2.4993 +#if (ACC_HAVE_MM_HUGE_PTR)
  2.4994 +#  define acc_hsize_t   unsigned long
  2.4995 +#  define acc_hvoid_p   void __huge *
  2.4996 +#  define acc_hchar_p   char __huge *
  2.4997 +#  define acc_hchar_pp  char __huge * __huge *
  2.4998 +#  define acc_hbyte_p   unsigned char __huge *
  2.4999 +#else
  2.5000 +#  define acc_hsize_t   size_t
  2.5001 +#  define acc_hvoid_p   void *
  2.5002 +#  define acc_hchar_p   char *
  2.5003 +#  define acc_hchar_pp  char **
  2.5004 +#  define acc_hbyte_p   unsigned char *
  2.5005 +#endif
  2.5006 +#endif
  2.5007 +ACCLIB_EXTERN(acc_hvoid_p, acc_halloc) (acc_hsize_t);
  2.5008 +ACCLIB_EXTERN(void, acc_hfree) (acc_hvoid_p);
  2.5009 +#if (ACC_OS_DOS16 || ACC_OS_OS216)
  2.5010 +ACCLIB_EXTERN(void __far*, acc_dos_alloc) (unsigned long);
  2.5011 +ACCLIB_EXTERN(int, acc_dos_free) (void __far*);
  2.5012 +#endif
  2.5013 +ACCLIB_EXTERN(int, acc_hmemcmp) (const acc_hvoid_p, const acc_hvoid_p, acc_hsize_t);
  2.5014 +ACCLIB_EXTERN(acc_hvoid_p, acc_hmemcpy) (acc_hvoid_p, const acc_hvoid_p, acc_hsize_t);
  2.5015 +ACCLIB_EXTERN(acc_hvoid_p, acc_hmemmove) (acc_hvoid_p, const acc_hvoid_p, acc_hsize_t);
  2.5016 +ACCLIB_EXTERN(acc_hvoid_p, acc_hmemset) (acc_hvoid_p, int, acc_hsize_t);
  2.5017 +ACCLIB_EXTERN(acc_hsize_t, acc_hstrlen) (const acc_hchar_p);
  2.5018 +ACCLIB_EXTERN(int, acc_hstrcmp) (const acc_hchar_p, const acc_hchar_p);
  2.5019 +ACCLIB_EXTERN(int, acc_hstrncmp)(const acc_hchar_p, const acc_hchar_p, acc_hsize_t);
  2.5020 +ACCLIB_EXTERN(int, acc_ascii_hstricmp) (const acc_hchar_p, const acc_hchar_p);
  2.5021 +ACCLIB_EXTERN(int, acc_ascii_hstrnicmp)(const acc_hchar_p, const acc_hchar_p, acc_hsize_t);
  2.5022 +ACCLIB_EXTERN(int, acc_ascii_hmemicmp) (const acc_hvoid_p, const acc_hvoid_p, acc_hsize_t);
  2.5023 +ACCLIB_EXTERN(acc_hchar_p, acc_hstrstr) (const acc_hchar_p, const acc_hchar_p);
  2.5024 +ACCLIB_EXTERN(acc_hchar_p, acc_ascii_hstristr) (const acc_hchar_p, const acc_hchar_p);
  2.5025 +ACCLIB_EXTERN(acc_hvoid_p, acc_hmemmem) (const acc_hvoid_p, acc_hsize_t, const acc_hvoid_p, acc_hsize_t);
  2.5026 +ACCLIB_EXTERN(acc_hvoid_p, acc_ascii_hmemimem) (const acc_hvoid_p, acc_hsize_t, const acc_hvoid_p, acc_hsize_t);
  2.5027 +ACCLIB_EXTERN(acc_hchar_p, acc_hstrcpy) (acc_hchar_p, const acc_hchar_p);
  2.5028 +ACCLIB_EXTERN(acc_hchar_p, acc_hstrcat) (acc_hchar_p, const acc_hchar_p);
  2.5029 +ACCLIB_EXTERN(acc_hsize_t, acc_hstrlcpy) (acc_hchar_p, const acc_hchar_p, acc_hsize_t);
  2.5030 +ACCLIB_EXTERN(acc_hsize_t, acc_hstrlcat) (acc_hchar_p, const acc_hchar_p, acc_hsize_t);
  2.5031 +ACCLIB_EXTERN(int, acc_hstrscpy) (acc_hchar_p, const acc_hchar_p, acc_hsize_t);
  2.5032 +ACCLIB_EXTERN(int, acc_hstrscat) (acc_hchar_p, const acc_hchar_p, acc_hsize_t);
  2.5033 +ACCLIB_EXTERN(acc_hchar_p, acc_hstrccpy) (acc_hchar_p, const acc_hchar_p, int);
  2.5034 +ACCLIB_EXTERN(acc_hvoid_p, acc_hmemccpy) (acc_hvoid_p, const acc_hvoid_p, int, acc_hsize_t);
  2.5035 +ACCLIB_EXTERN(acc_hchar_p, acc_hstrchr)  (const acc_hchar_p, int);
  2.5036 +ACCLIB_EXTERN(acc_hchar_p, acc_hstrrchr) (const acc_hchar_p, int);
  2.5037 +ACCLIB_EXTERN(acc_hchar_p, acc_ascii_hstrichr) (const acc_hchar_p, int);
  2.5038 +ACCLIB_EXTERN(acc_hchar_p, acc_ascii_hstrrichr) (const acc_hchar_p, int);
  2.5039 +ACCLIB_EXTERN(acc_hvoid_p, acc_hmemchr)  (const acc_hvoid_p, int, acc_hsize_t);
  2.5040 +ACCLIB_EXTERN(acc_hvoid_p, acc_hmemrchr) (const acc_hvoid_p, int, acc_hsize_t);
  2.5041 +ACCLIB_EXTERN(acc_hvoid_p, acc_ascii_hmemichr) (const acc_hvoid_p, int, acc_hsize_t);
  2.5042 +ACCLIB_EXTERN(acc_hvoid_p, acc_ascii_hmemrichr) (const acc_hvoid_p, int, acc_hsize_t);
  2.5043 +ACCLIB_EXTERN(acc_hsize_t, acc_hstrspn)  (const acc_hchar_p, const acc_hchar_p);
  2.5044 +ACCLIB_EXTERN(acc_hsize_t, acc_hstrrspn) (const acc_hchar_p, const acc_hchar_p);
  2.5045 +ACCLIB_EXTERN(acc_hsize_t, acc_hstrcspn)  (const acc_hchar_p, const acc_hchar_p);
  2.5046 +ACCLIB_EXTERN(acc_hsize_t, acc_hstrrcspn) (const acc_hchar_p, const acc_hchar_p);
  2.5047 +ACCLIB_EXTERN(acc_hchar_p, acc_hstrpbrk)  (const acc_hchar_p, const acc_hchar_p);
  2.5048 +ACCLIB_EXTERN(acc_hchar_p, acc_hstrrpbrk) (const acc_hchar_p, const acc_hchar_p);
  2.5049 +ACCLIB_EXTERN(acc_hchar_p, acc_hstrsep)  (acc_hchar_pp, const acc_hchar_p);
  2.5050 +ACCLIB_EXTERN(acc_hchar_p, acc_hstrrsep) (acc_hchar_pp, const acc_hchar_p);
  2.5051 +ACCLIB_EXTERN(acc_hchar_p, acc_ascii_hstrlwr) (acc_hchar_p);
  2.5052 +ACCLIB_EXTERN(acc_hchar_p, acc_ascii_hstrupr) (acc_hchar_p);
  2.5053 +ACCLIB_EXTERN(acc_hvoid_p, acc_ascii_hmemlwr) (acc_hvoid_p, acc_hsize_t);
  2.5054 +ACCLIB_EXTERN(acc_hvoid_p, acc_ascii_hmemupr) (acc_hvoid_p, acc_hsize_t);
  2.5055 +ACCLIB_EXTERN(acc_hsize_t, acc_hfread) (void *, acc_hvoid_p, acc_hsize_t);
  2.5056 +ACCLIB_EXTERN(acc_hsize_t, acc_hfwrite) (void *, const acc_hvoid_p, acc_hsize_t);
  2.5057 +#if (ACC_HAVE_MM_HUGE_PTR)
  2.5058 +ACCLIB_EXTERN(long, acc_hread) (int, acc_hvoid_p, long);
  2.5059 +ACCLIB_EXTERN(long, acc_hwrite) (int, const acc_hvoid_p, long);
  2.5060 +#endif
  2.5061 +ACCLIB_EXTERN(long, acc_safe_hread) (int, acc_hvoid_p, long);
  2.5062 +ACCLIB_EXTERN(long, acc_safe_hwrite) (int, const acc_hvoid_p, long);
  2.5063 +ACCLIB_EXTERN(unsigned, acc_ua_get_be16) (const acc_hvoid_p);
  2.5064 +ACCLIB_EXTERN(acc_uint32l_t, acc_ua_get_be24) (const acc_hvoid_p);
  2.5065 +ACCLIB_EXTERN(acc_uint32l_t, acc_ua_get_be32) (const acc_hvoid_p);
  2.5066 +ACCLIB_EXTERN(void, acc_ua_set_be16) (acc_hvoid_p, unsigned);
  2.5067 +ACCLIB_EXTERN(void, acc_ua_set_be24) (acc_hvoid_p, acc_uint32l_t);
  2.5068 +ACCLIB_EXTERN(void, acc_ua_set_be32) (acc_hvoid_p, acc_uint32l_t);
  2.5069 +ACCLIB_EXTERN(unsigned, acc_ua_get_le16) (const acc_hvoid_p);
  2.5070 +ACCLIB_EXTERN(acc_uint32l_t, acc_ua_get_le24) (const acc_hvoid_p);
  2.5071 +ACCLIB_EXTERN(acc_uint32l_t, acc_ua_get_le32) (const acc_hvoid_p);
  2.5072 +ACCLIB_EXTERN(void, acc_ua_set_le16) (acc_hvoid_p, unsigned);
  2.5073 +ACCLIB_EXTERN(void, acc_ua_set_le24) (acc_hvoid_p, acc_uint32l_t);
  2.5074 +ACCLIB_EXTERN(void, acc_ua_set_le32) (acc_hvoid_p, acc_uint32l_t);
  2.5075 +#if defined(acc_int64l_t)
  2.5076 +ACCLIB_EXTERN(acc_uint64l_t, acc_ua_get_be64) (const acc_hvoid_p);
  2.5077 +ACCLIB_EXTERN(void, acc_ua_set_be64) (acc_hvoid_p, acc_uint64l_t);
  2.5078 +ACCLIB_EXTERN(acc_uint64l_t, acc_ua_get_le64) (const acc_hvoid_p);
  2.5079 +ACCLIB_EXTERN(void, acc_ua_set_le64) (acc_hvoid_p, acc_uint64l_t);
  2.5080 +#endif
  2.5081 +ACCLIB_EXTERN_NOINLINE(short, acc_vget_short) (short, int);
  2.5082 +ACCLIB_EXTERN_NOINLINE(int, acc_vget_int) (int, int);
  2.5083 +ACCLIB_EXTERN_NOINLINE(long, acc_vget_long) (long, int);
  2.5084 +#if defined(acc_int64l_t)
  2.5085 +ACCLIB_EXTERN_NOINLINE(acc_int64l_t, acc_vget_acc_int64l_t) (acc_int64l_t, int);
  2.5086 +#endif
  2.5087 +ACCLIB_EXTERN_NOINLINE(acc_hsize_t, acc_vget_acc_hsize_t) (acc_hsize_t, int);
  2.5088 +#if !(ACC_CFG_NO_FLOAT)
  2.5089 +ACCLIB_EXTERN_NOINLINE(float, acc_vget_float) (float, int);
  2.5090 +#endif
  2.5091 +#if !(ACC_CFG_NO_DOUBLE)
  2.5092 +ACCLIB_EXTERN_NOINLINE(double, acc_vget_double) (double, int);
  2.5093 +#endif
  2.5094 +ACCLIB_EXTERN_NOINLINE(acc_hvoid_p, acc_vget_acc_hvoid_p) (acc_hvoid_p, int);
  2.5095 +ACCLIB_EXTERN_NOINLINE(const acc_hvoid_p, acc_vget_acc_hvoid_cp) (const acc_hvoid_p, int);
  2.5096 +#if !defined(ACC_FN_PATH_MAX)
  2.5097 +#if (ACC_OS_DOS16 || ACC_OS_WIN16)
  2.5098 +#  define ACC_FN_PATH_MAX   143
  2.5099 +#elif (ACC_OS_DOS32 || ACC_OS_OS2 || ACC_OS_OS216 || ACC_OS_WIN32 || ACC_OS_WIN64)
  2.5100 +#  define ACC_FN_PATH_MAX   259
  2.5101 +#elif (ACC_OS_TOS)
  2.5102 +#  define ACC_FN_PATH_MAX   259
  2.5103 +#endif
  2.5104 +#endif
  2.5105 +#if !defined(ACC_FN_PATH_MAX)
  2.5106 +#  define ACC_FN_PATH_MAX   1023
  2.5107 +#endif
  2.5108 +#if !defined(ACC_FN_NAME_MAX)
  2.5109 +#if (ACC_OS_DOS16 || ACC_OS_WIN16)
  2.5110 +#  define ACC_FN_NAME_MAX   12
  2.5111 +#elif (ACC_ARCH_M68K && ACC_OS_TOS && (ACC_CC_PUREC || ACC_CC_TURBOC))
  2.5112 +#  define ACC_FN_NAME_MAX   12
  2.5113 +#elif (ACC_OS_DOS32 && ACC_CC_GNUC) && defined(__DJGPP__)
  2.5114 +#elif (ACC_OS_DOS32)
  2.5115 +#  define ACC_FN_NAME_MAX   12
  2.5116 +#endif
  2.5117 +#endif
  2.5118 +#if !defined(ACC_FN_NAME_MAX)
  2.5119 +#  define ACC_FN_NAME_MAX   ACC_FN_PATH_MAX
  2.5120 +#endif
  2.5121 +#define ACC_FNMATCH_NOESCAPE        1
  2.5122 +#define ACC_FNMATCH_PATHNAME        2
  2.5123 +#define ACC_FNMATCH_PATHSTAR        4
  2.5124 +#define ACC_FNMATCH_PERIOD          8
  2.5125 +#define ACC_FNMATCH_ASCII_CASEFOLD  16
  2.5126 +ACCLIB_EXTERN(int, acc_fnmatch) (const acc_hchar_p, const acc_hchar_p, int);
  2.5127 +#undef __ACCLIB_USE_OPENDIR
  2.5128 +#if (HAVE_DIRENT_H || ACC_CC_WATCOMC)
  2.5129 +#  define __ACCLIB_USE_OPENDIR 1
  2.5130 +#  if (ACC_OS_DOS32 && defined(__BORLANDC__))
  2.5131 +#  elif (ACC_OS_DOS32 && ACC_CC_GNUC) && defined(__DJGPP__)
  2.5132 +#  elif (ACC_OS_OS2 || ACC_OS_OS216)
  2.5133 +#  elif (ACC_ARCH_M68K && ACC_OS_TOS && ACC_CC_GNUC)
  2.5134 +#  elif (ACC_OS_WIN32 && !(ACC_HAVE_WINDOWS_H))
  2.5135 +#  elif (ACC_OS_DOS16 || ACC_OS_DOS32 || ACC_OS_OS2 || ACC_OS_OS216 || ACC_OS_TOS || ACC_OS_WIN16 || ACC_OS_WIN32 || ACC_OS_WIN64)
  2.5136 +#    undef __ACCLIB_USE_OPENDIR
  2.5137 +#  endif
  2.5138 +#endif
  2.5139 +typedef struct
  2.5140 +{
  2.5141 +#if defined(__ACCLIB_USE_OPENDIR)
  2.5142 +    void* u_dirp;
  2.5143 +# if (ACC_CC_WATCOMC)
  2.5144 +    unsigned short f_time;
  2.5145 +    unsigned short f_date;
  2.5146 +    unsigned long f_size;
  2.5147 +# endif
  2.5148 +    char f_name[ACC_FN_NAME_MAX+1];
  2.5149 +#elif (ACC_OS_WIN32 || ACC_OS_WIN64)
  2.5150 +    acclib_handle_t u_handle;
  2.5151 +    unsigned f_attr;
  2.5152 +    unsigned f_size_low;
  2.5153 +    unsigned f_size_high;
  2.5154 +    char f_name[ACC_FN_NAME_MAX+1];
  2.5155 +#elif (ACC_OS_DOS16 || ACC_OS_DOS32 || ACC_OS_TOS || ACC_OS_WIN16)
  2.5156 +    char u_dta[21];
  2.5157 +    unsigned char f_attr;
  2.5158 +    unsigned short f_time;
  2.5159 +    unsigned short f_date;
  2.5160 +    unsigned short f_size_low;
  2.5161 +    unsigned short f_size_high;
  2.5162 +    char f_name[ACC_FN_NAME_MAX+1];
  2.5163 +    char u_dirp;
  2.5164 +#else
  2.5165 +    void* u_dirp;
  2.5166 +    char f_name[ACC_FN_NAME_MAX+1];
  2.5167 +#endif
  2.5168 +} acc_dir_t;
  2.5169 +#ifndef acc_dir_p
  2.5170 +#define acc_dir_p acc_dir_t *
  2.5171 +#endif
  2.5172 +ACCLIB_EXTERN(int, acc_opendir)  (acc_dir_p, const char*);
  2.5173 +ACCLIB_EXTERN(int, acc_readdir)  (acc_dir_p);
  2.5174 +ACCLIB_EXTERN(int, acc_closedir) (acc_dir_p);
  2.5175 +#if (ACC_CC_GNUC) && (defined(__CYGWIN__) || defined(__MINGW32__))
  2.5176 +#  define acc_alloca(x)     __builtin_alloca((x))
  2.5177 +#elif (ACC_CC_GNUC) && (ACC_OS_CONSOLE_PS2)
  2.5178 +#  define acc_alloca(x)     __builtin_alloca((x))
  2.5179 +#elif (ACC_CC_BORLANDC || ACC_CC_LCC) && defined(__linux__)
  2.5180 +#elif (HAVE_ALLOCA)
  2.5181 +#  define acc_alloca(x)     ACC_STATIC_CAST(void *, alloca((x)))
  2.5182 +#endif
  2.5183 +#if (ACC_OS_DOS32 && ACC_CC_GNUC) && defined(__DJGPP__)
  2.5184 +#  define acc_stackavail()  stackavail()
  2.5185 +#elif (ACC_ARCH_I086 && ACC_CC_BORLANDC && (__BORLANDC__ >= 0x0410))
  2.5186 +#  define acc_stackavail()  stackavail()
  2.5187 +#elif (ACC_ARCH_I086 && ACC_CC_BORLANDC && (__BORLANDC__ >= 0x0400))
  2.5188 +#  if (ACC_OS_WIN16) && (ACC_MM_TINY || ACC_MM_SMALL || ACC_MM_MEDIUM)
  2.5189 +#  else
  2.5190 +#    define acc_stackavail()  stackavail()
  2.5191 +#  endif
  2.5192 +#elif ((ACC_ARCH_I086 || ACC_ARCH_I386) && (ACC_CC_DMC || ACC_CC_SYMANTECC))
  2.5193 +#  define acc_stackavail()  stackavail()
  2.5194 +#elif ((ACC_ARCH_I086) && ACC_CC_MSC && (_MSC_VER >= 700))
  2.5195 +#  define acc_stackavail()  _stackavail()
  2.5196 +#elif ((ACC_ARCH_I086) && ACC_CC_MSC)
  2.5197 +#  define acc_stackavail()  stackavail()
  2.5198 +#elif ((ACC_ARCH_I086 || ACC_ARCH_I386) && ACC_CC_TURBOC && (__TURBOC__ >= 0x0450))
  2.5199 +#  define acc_stackavail()  stackavail()
  2.5200 +#elif (ACC_ARCH_I086 && ACC_CC_TURBOC && (__TURBOC__ >= 0x0400))
  2.5201 +   ACC_EXTERN_C size_t __cdecl stackavail(void);
  2.5202 +#  define acc_stackavail()  stackavail()
  2.5203 +#elif ((ACC_ARCH_I086 || ACC_ARCH_I386) && (ACC_CC_WATCOMC))
  2.5204 +#  define acc_stackavail()  stackavail()
  2.5205 +#elif (ACC_ARCH_I086 && ACC_CC_ZORTECHC)
  2.5206 +#  define acc_stackavail()  _chkstack()
  2.5207 +#endif
  2.5208 +ACCLIB_EXTERN(acc_intptr_t, acc_get_osfhandle) (int);
  2.5209 +ACCLIB_EXTERN(const char *, acc_getenv) (const char *);
  2.5210 +ACCLIB_EXTERN(int, acc_isatty) (int);
  2.5211 +ACCLIB_EXTERN(int, acc_mkdir) (const char*, unsigned);
  2.5212 +ACCLIB_EXTERN(int, acc_rmdir) (const char*);
  2.5213 +ACCLIB_EXTERN(int, acc_response) (int*, char***);
  2.5214 +ACCLIB_EXTERN(int, acc_set_binmode) (int, int);
  2.5215 +#if defined(acc_int32e_t)
  2.5216 +ACCLIB_EXTERN(acc_int32e_t, acc_muldiv32s) (acc_int32e_t, acc_int32e_t, acc_int32e_t);
  2.5217 +ACCLIB_EXTERN(acc_uint32e_t, acc_muldiv32u) (acc_uint32e_t, acc_uint32e_t, acc_uint32e_t);
  2.5218 +#endif
  2.5219 +ACCLIB_EXTERN(void, acc_wildargv) (int*, char***);
  2.5220 +ACCLIB_EXTERN_NOINLINE(void, acc_debug_break) (void);
  2.5221 +ACCLIB_EXTERN_NOINLINE(void, acc_debug_nop) (void);
  2.5222 +ACCLIB_EXTERN_NOINLINE(int, acc_debug_align_check_query) (void);
  2.5223 +ACCLIB_EXTERN_NOINLINE(int, acc_debug_align_check_enable) (int);
  2.5224 +ACCLIB_EXTERN_NOINLINE(unsigned, acc_debug_running_on_qemu) (void);
  2.5225 +ACCLIB_EXTERN_NOINLINE(unsigned, acc_debug_running_on_valgrind) (void);
  2.5226 +#if defined(acc_int32e_t)
  2.5227 +ACCLIB_EXTERN(int, acc_tsc_read) (acc_uint32e_t*);
  2.5228 +#endif
  2.5229 +struct acc_pclock_handle_t;
  2.5230 +struct acc_pclock_t;
  2.5231 +typedef struct acc_pclock_handle_t acc_pclock_handle_t;
  2.5232 +typedef struct acc_pclock_t acc_pclock_t;
  2.5233 +#ifndef acc_pclock_handle_p
  2.5234 +#define acc_pclock_handle_p acc_pclock_handle_t *
  2.5235 +#endif
  2.5236 +#ifndef acc_pclock_p
  2.5237 +#define acc_pclock_p acc_pclock_t *
  2.5238 +#endif
  2.5239 +#define ACC_PCLOCK_REALTIME             0
  2.5240 +#define ACC_PCLOCK_MONOTONIC            1
  2.5241 +#define ACC_PCLOCK_PROCESS_CPUTIME_ID   2
  2.5242 +#define ACC_PCLOCK_THREAD_CPUTIME_ID    3
  2.5243 +typedef int (*acc_pclock_gettime_t) (acc_pclock_handle_p, acc_pclock_p);
  2.5244 +struct acc_pclock_handle_t {
  2.5245 +    acclib_handle_t h;
  2.5246 +    int mode;
  2.5247 +    int read_error;
  2.5248 +    const char* name;
  2.5249 +    acc_pclock_gettime_t gettime;
  2.5250 +#if defined(acc_int64l_t)
  2.5251 +    acc_uint64l_t ticks_base;
  2.5252 +#endif
  2.5253 +};
  2.5254 +struct acc_pclock_t {
  2.5255 +#if defined(acc_int64l_t)
  2.5256 +    acc_int64l_t tv_sec;
  2.5257 +#else
  2.5258 +    acc_int32l_t tv_sec_high;
  2.5259 +    acc_uint32l_t tv_sec_low;
  2.5260 +#endif
  2.5261 +    acc_uint32l_t tv_nsec;
  2.5262 +};
  2.5263 +ACCLIB_EXTERN(int, acc_pclock_open)  (acc_pclock_handle_p, int);
  2.5264 +ACCLIB_EXTERN(int, acc_pclock_open_default) (acc_pclock_handle_p);
  2.5265 +ACCLIB_EXTERN(int, acc_pclock_close) (acc_pclock_handle_p);
  2.5266 +ACCLIB_EXTERN(void, acc_pclock_read) (acc_pclock_handle_p, acc_pclock_p);
  2.5267 +#if !(ACC_CFG_NO_DOUBLE)
  2.5268 +ACCLIB_EXTERN(double, acc_pclock_get_elapsed) (acc_pclock_handle_p, const acc_pclock_p, const acc_pclock_p);
  2.5269 +#endif
  2.5270 +ACCLIB_EXTERN(int, acc_pclock_flush_cpu_cache) (acc_pclock_handle_p, unsigned);
  2.5271 +struct acc_getopt_t;
  2.5272 +typedef struct acc_getopt_t acc_getopt_t;
  2.5273 +#ifndef acc_getopt_p
  2.5274 +#define acc_getopt_p acc_getopt_t *
  2.5275 +#endif
  2.5276 +struct acc_getopt_longopt_t;
  2.5277 +typedef struct acc_getopt_longopt_t acc_getopt_longopt_t;
  2.5278 +#ifndef acc_getopt_longopt_p
  2.5279 +#define acc_getopt_longopt_p acc_getopt_longopt_t *
  2.5280 +#endif
  2.5281 +struct acc_getopt_longopt_t {
  2.5282 +    const char* name;
  2.5283 +    int has_arg;
  2.5284 +    int* flag;
  2.5285 +    int val;
  2.5286 +};
  2.5287 +typedef void (*acc_getopt_opterr_t)(acc_getopt_p, const char*, void *);
  2.5288 +struct acc_getopt_t {
  2.5289 +    void *user;
  2.5290 +    const char *progname;
  2.5291 +    int bad_option;
  2.5292 +    char *optarg;
  2.5293 +    acc_getopt_opterr_t opterr;
  2.5294 +    int optind;
  2.5295 +    int optopt;
  2.5296 +    int errcount;
  2.5297 +    int argc; char** argv;
  2.5298 +    int eof; int shortpos;
  2.5299 +    int pending_rotate_first, pending_rotate_middle;
  2.5300 +};
  2.5301 +enum { ACC_GETOPT_NO_ARG, ACC_GETOPT_REQUIRED_ARG, ACC_GETOPT_OPTIONAL_ARG, ACC_GETOPT_EXACT_ARG = 0x10 };
  2.5302 +enum { ACC_GETOPT_PERMUTE, ACC_GETOPT_RETURN_IN_ORDER, ACC_GETOPT_REQUIRE_ORDER };
  2.5303 +ACCLIB_EXTERN(void, acc_getopt_init) (acc_getopt_p g,
  2.5304 +                                      int start_argc, int argc, char** argv);
  2.5305 +ACCLIB_EXTERN(int, acc_getopt) (acc_getopt_p g,
  2.5306 +                                const char* shortopts,
  2.5307 +                                const acc_getopt_longopt_p longopts,
  2.5308 +                                int* longind);
  2.5309 +typedef struct {
  2.5310 +    acc_uint32l_t seed;
  2.5311 +} acc_rand31_t;
  2.5312 +#ifndef acc_rand31_p
  2.5313 +#define acc_rand31_p acc_rand31_t *
  2.5314 +#endif
  2.5315 +ACCLIB_EXTERN(void, acc_srand31) (acc_rand31_p, acc_uint32l_t);
  2.5316 +ACCLIB_EXTERN(acc_uint32l_t, acc_rand31) (acc_rand31_p);
  2.5317 +#if defined(acc_int64l_t)
  2.5318 +typedef struct {
  2.5319 +    acc_uint64l_t seed;
  2.5320 +} acc_rand48_t;
  2.5321 +#ifndef acc_rand48_p
  2.5322 +#define acc_rand48_p acc_rand48_t *
  2.5323 +#endif
  2.5324 +ACCLIB_EXTERN(void, acc_srand48) (acc_rand48_p, acc_uint32l_t);
  2.5325 +ACCLIB_EXTERN(acc_uint32l_t, acc_rand48) (acc_rand48_p);
  2.5326 +ACCLIB_EXTERN(acc_uint32l_t, acc_rand48_r32) (acc_rand48_p);
  2.5327 +#endif
  2.5328 +#if defined(acc_int64l_t)
  2.5329 +typedef struct {
  2.5330 +    acc_uint64l_t seed;
  2.5331 +} acc_rand64_t;
  2.5332 +#ifndef acc_rand64_p
  2.5333 +#define acc_rand64_p acc_rand64_t *
  2.5334 +#endif
  2.5335 +ACCLIB_EXTERN(void, acc_srand64) (acc_rand64_p, acc_uint64l_t);
  2.5336 +ACCLIB_EXTERN(acc_uint32l_t, acc_rand64) (acc_rand64_p);
  2.5337 +ACCLIB_EXTERN(acc_uint32l_t, acc_rand64_r32) (acc_rand64_p);
  2.5338 +#endif
  2.5339 +typedef struct {
  2.5340 +    unsigned n;
  2.5341 +    acc_uint32l_t s[624];
  2.5342 +} acc_randmt_t;
  2.5343 +#ifndef acc_randmt_p
  2.5344 +#define acc_randmt_p acc_randmt_t *
  2.5345 +#endif
  2.5346 +ACCLIB_EXTERN(void, acc_srandmt) (acc_randmt_p, acc_uint32l_t);
  2.5347 +ACCLIB_EXTERN(acc_uint32l_t, acc_randmt) (acc_randmt_p);
  2.5348 +ACCLIB_EXTERN(acc_uint32l_t, acc_randmt_r32) (acc_randmt_p);
  2.5349 +#if defined(acc_int64l_t)
  2.5350 +typedef struct {
  2.5351 +    unsigned n;
  2.5352 +    acc_uint64l_t s[312];
  2.5353 +} acc_randmt64_t;
  2.5354 +#ifndef acc_randmt64_p
  2.5355 +#define acc_randmt64_p acc_randmt64_t *
  2.5356 +#endif
  2.5357 +ACCLIB_EXTERN(void, acc_srandmt64) (acc_randmt64_p, acc_uint64l_t);
  2.5358 +ACCLIB_EXTERN(acc_uint64l_t, acc_randmt64_r64) (acc_randmt64_p);
  2.5359 +#endif
  2.5360 +#define ACC_SPAWN_P_WAIT    0
  2.5361 +#define ACC_SPAWN_P_NOWAIT  1
  2.5362 +ACCLIB_EXTERN(int, acc_spawnv)  (int mode, const char* fn, const char* const * argv);
  2.5363 +ACCLIB_EXTERN(int, acc_spawnvp) (int mode, const char* fn, const char* const * argv);
  2.5364 +ACCLIB_EXTERN(int, acc_spawnve) (int mode, const char* fn, const char* const * argv, const char * const envp);
  2.5365 +#endif
  2.5366 +#endif
  2.5367 +#if defined(ACC_WANT_ACC_CXX_H)
  2.5368 +#  undef ACC_WANT_ACC_CXX_H
  2.5369 +#ifndef __ACC_CXX_H_INCLUDED
  2.5370 +#define __ACC_CXX_H_INCLUDED 1
  2.5371 +#if defined(__cplusplus)
  2.5372 +#if defined(ACC_CXX_NOTHROW)
  2.5373 +#elif (ACC_CC_GNUC && (ACC_CC_GNUC < 0x020800ul))
  2.5374 +#elif (ACC_CC_BORLANDC && (__BORLANDC__ < 0x0450))
  2.5375 +#elif (ACC_CC_GHS && !defined(__EXCEPTIONS))
  2.5376 +#elif (ACC_CC_HIGHC)
  2.5377 +#elif (ACC_CC_MSC && (_MSC_VER < 1100))
  2.5378 +#elif (ACC_CC_NDPC)
  2.5379 +#elif (ACC_CC_TURBOC)
  2.5380 +#elif (ACC_CC_WATCOMC && !defined(_CPPUNWIND))
  2.5381 +#elif (ACC_CC_ZORTECHC)
  2.5382 +#else
  2.5383 +#  define ACC_CXX_NOTHROW           throw()
  2.5384 +#endif
  2.5385 +#if !defined(ACC_CXX_NOTHROW)
  2.5386 +#  define ACC_CXX_NOTHROW           /*empty*/
  2.5387 +#endif
  2.5388 +#if defined(__ACC_CXX_DO_NEW)
  2.5389 +#elif (ACC_CC_GHS || ACC_CC_NDPC || ACC_CC_PGI)
  2.5390 +#  define __ACC_CXX_DO_NEW          { return 0; }
  2.5391 +#elif ((ACC_CC_BORLANDC || ACC_CC_TURBOC) && ACC_ARCH_I086)
  2.5392 +#  define __ACC_CXX_DO_NEW          { return 0; }
  2.5393 +#else
  2.5394 +#  define __ACC_CXX_DO_NEW          ;
  2.5395 +#endif
  2.5396 +#if defined(__ACC_CXX_DO_DELETE)
  2.5397 +#elif (ACC_CC_BORLANDC || ACC_CC_TURBOC)
  2.5398 +#  define __ACC_CXX_DO_DELETE       { }
  2.5399 +#else
  2.5400 +#  define __ACC_CXX_DO_DELETE       ACC_CXX_NOTHROW { }
  2.5401 +#endif
  2.5402 +#if (ACC_CC_BORLANDC && (__BORLANDC__ < 0x0450))
  2.5403 +#elif (ACC_CC_MSC && ACC_MM_HUGE)
  2.5404 +#  define ACC_CXX_DISABLE_NEW_DELETE private:
  2.5405 +#elif (ACC_CC_MSC && (_MSC_VER < 1100))
  2.5406 +#elif (ACC_CC_NDPC)
  2.5407 +#elif (ACC_CC_SYMANTECC || ACC_CC_ZORTECHC)
  2.5408 +#elif (ACC_CC_TURBOC)
  2.5409 +#elif (ACC_CC_WATCOMC && (__WATCOMC__ < 1100))
  2.5410 +#else
  2.5411 +#  define __ACC_CXX_HAVE_ARRAY_NEW 1
  2.5412 +#endif
  2.5413 +#if (__ACC_CXX_HAVE_ARRAY_NEW)
  2.5414 +#  define __ACC_CXX_HAVE_PLACEMENT_NEW 1
  2.5415 +#endif
  2.5416 +#if (__ACC_CXX_HAVE_PLACEMENT_NEW)
  2.5417 +#  if (ACC_CC_GNUC >= 0x030000ul)
  2.5418 +#    define __ACC_CXX_HAVE_PLACEMENT_DELETE 1
  2.5419 +#  elif (ACC_CC_INTELC)
  2.5420 +#    define __ACC_CXX_HAVE_PLACEMENT_DELETE 1
  2.5421 +#  elif (ACC_CC_MSC && (_MSC_VER >= 1200))
  2.5422 +#    define __ACC_CXX_HAVE_PLACEMENT_DELETE 1
  2.5423 +#  elif (ACC_CC_CLANG || ACC_CC_LLVM || ACC_CC_PATHSCALE)
  2.5424 +#    define __ACC_CXX_HAVE_PLACEMENT_DELETE 1
  2.5425 +#  elif (ACC_CC_PGI)
  2.5426 +#    define __ACC_CXX_HAVE_PLACEMENT_DELETE 1
  2.5427 +#  endif
  2.5428 +#endif
  2.5429 +#if defined(ACC_CXX_DISABLE_NEW_DELETE)
  2.5430 +#elif defined(new) || defined(delete)
  2.5431 +#  define ACC_CXX_DISABLE_NEW_DELETE private:
  2.5432 +#elif (ACC_CC_GNUC && (ACC_CC_GNUC < 0x025b00ul))
  2.5433 +#  define ACC_CXX_DISABLE_NEW_DELETE private:
  2.5434 +#elif  (ACC_CC_HIGHC)
  2.5435 +#  define ACC_CXX_DISABLE_NEW_DELETE private:
  2.5436 +#elif !(__ACC_CXX_HAVE_ARRAY_NEW)
  2.5437 +#  define ACC_CXX_DISABLE_NEW_DELETE \
  2.5438 +        protected: static void operator delete(void*) __ACC_CXX_DO_DELETE \
  2.5439 +        protected: static void* operator new(size_t) __ACC_CXX_DO_NEW \
  2.5440 +        private:
  2.5441 +#else
  2.5442 +#  define ACC_CXX_DISABLE_NEW_DELETE \
  2.5443 +        protected: static void operator delete(void*) __ACC_CXX_DO_DELETE \
  2.5444 +                   static void operator delete[](void*) __ACC_CXX_DO_DELETE \
  2.5445 +        private:   static void* operator new(size_t)  __ACC_CXX_DO_NEW \
  2.5446 +                   static void* operator new[](size_t) __ACC_CXX_DO_NEW
  2.5447 +#endif
  2.5448 +#if defined(ACC_CXX_TRIGGER_FUNCTION)
  2.5449 +#else
  2.5450 +#  define ACC_CXX_TRIGGER_FUNCTION \
  2.5451 +        protected: virtual const void* acc_cxx_trigger_function() const; \
  2.5452 +        private:
  2.5453 +#endif
  2.5454 +#if defined(ACC_CXX_TRIGGER_FUNCTION_IMPL)
  2.5455 +#else
  2.5456 +#  define ACC_CXX_TRIGGER_FUNCTION_IMPL(klass) \
  2.5457 +        const void* klass::acc_cxx_trigger_function() const { return ACC_STATIC_CAST(const void *, 0); }
  2.5458 +#endif
  2.5459 +#endif
  2.5460 +#endif
  2.5461 +#endif
  2.5462 +#if defined(ACC_WANT_ACC_CHK_CH)
  2.5463 +#  undef ACC_WANT_ACC_CHK_CH
  2.5464 +#if !defined(ACCCHK_ASSERT)
  2.5465 +#  define ACCCHK_ASSERT(expr)   ACC_COMPILE_TIME_ASSERT_HEADER(expr)
  2.5466 +#endif
  2.5467 +#if !defined(ACCCHK_ASSERT_SIGN_T)
  2.5468 +#  define ACCCHK_ASSERT_SIGN_T(type,relop) \
  2.5469 +        ACCCHK_ASSERT( ACC_STATIC_CAST(type, -1)  relop  ACC_STATIC_CAST(type, 0)) \
  2.5470 +        ACCCHK_ASSERT( ACC_STATIC_CAST(type, ~ACC_STATIC_CAST(type, 0)) relop  ACC_STATIC_CAST(type, 0)) \
  2.5471 +        ACCCHK_ASSERT( ACC_STATIC_CAST(type, ~ACC_STATIC_CAST(type, 0)) ==     ACC_STATIC_CAST(type, -1))
  2.5472 +#endif
  2.5473 +#if !defined(ACCCHK_ASSERT_IS_SIGNED_T)
  2.5474 +#  define ACCCHK_ASSERT_IS_SIGNED_T(type)       ACCCHK_ASSERT_SIGN_T(type,<)
  2.5475 +#endif
  2.5476 +#if !defined(ACCCHK_ASSERT_IS_UNSIGNED_T)
  2.5477 +#  if (ACC_BROKEN_INTEGRAL_PROMOTION)
  2.5478 +#    define ACCCHK_ASSERT_IS_UNSIGNED_T(type) \
  2.5479 +        ACCCHK_ASSERT( ACC_STATIC_CAST(type, -1) > ACC_STATIC_CAST(type, 0) )
  2.5480 +#  else
  2.5481 +#    define ACCCHK_ASSERT_IS_UNSIGNED_T(type)   ACCCHK_ASSERT_SIGN_T(type,>)
  2.5482 +#  endif
  2.5483 +#endif
  2.5484 +#if defined(ACCCHK_CFG_PEDANTIC)
  2.5485 +#if (ACC_CC_BORLANDC && (__BORLANDC__ >= 0x0550) && (__BORLANDC__ < 0x0560))
  2.5486 +#  pragma option push -w-8055
  2.5487 +#elif (ACC_CC_BORLANDC && (__BORLANDC__ >= 0x0530) && (__BORLANDC__ < 0x0550))
  2.5488 +#  pragma option push -w-osh
  2.5489 +#endif
  2.5490 +#endif
  2.5491 +#if (ACC_0xffffffffL - ACC_UINT32_C(4294967294) != 1)
  2.5492 +#  error "preprocessor error"
  2.5493 +#endif
  2.5494 +#if (ACC_0xffffffffL - ACC_UINT32_C(0xfffffffd) != 2)
  2.5495 +#  error "preprocessor error"
  2.5496 +#endif
  2.5497 +#if +0
  2.5498 +#  error "preprocessor error"
  2.5499 +#endif
  2.5500 +#if -0
  2.5501 +#  error "preprocessor error"
  2.5502 +#endif
  2.5503 +#if +0 != 0
  2.5504 +#  error "preprocessor error"
  2.5505 +#endif
  2.5506 +#if -0 != 0
  2.5507 +#  error "preprocessor error"
  2.5508 +#endif
  2.5509 +#define ACCCHK_VAL  1
  2.5510 +#define ACCCHK_TMP1 ACCCHK_VAL
  2.5511 +#undef ACCCHK_VAL
  2.5512 +#define ACCCHK_VAL  2
  2.5513 +#define ACCCHK_TMP2 ACCCHK_VAL
  2.5514 +#if (ACCCHK_TMP1 != 2)
  2.5515 +#  error "preprocessor error 3a"
  2.5516 +#endif
  2.5517 +#if (ACCCHK_TMP2 != 2)
  2.5518 +#  error "preprocessor error 3b"
  2.5519 +#endif
  2.5520 +#undef ACCCHK_VAL
  2.5521 +#if (ACCCHK_TMP2)
  2.5522 +#  error "preprocessor error 3c"
  2.5523 +#endif
  2.5524 +#if (ACCCHK_TMP2 + 0 != 0)
  2.5525 +#  error "preprocessor error 3d"
  2.5526 +#endif
  2.5527 +#undef ACCCHK_TMP1
  2.5528 +#undef ACCCHK_TMP2
  2.5529 +#if 0 || defined(ACCCHK_CFG_PEDANTIC)
  2.5530 +#  if (ACC_ARCH_MIPS) && defined(_MIPS_SZINT)
  2.5531 +    ACCCHK_ASSERT((_MIPS_SZINT) == 8 * sizeof(int))
  2.5532 +#  endif
  2.5533 +#  if (ACC_ARCH_MIPS) && defined(_MIPS_SZLONG)
  2.5534 +    ACCCHK_ASSERT((_MIPS_SZLONG) == 8 * sizeof(long))
  2.5535 +#  endif
  2.5536 +#  if (ACC_ARCH_MIPS) && defined(_MIPS_SZPTR)
  2.5537 +    ACCCHK_ASSERT((_MIPS_SZPTR) == 8 * sizeof(void *))
  2.5538 +#  endif
  2.5539 +#endif
  2.5540 +    ACCCHK_ASSERT(1 == 1)
  2.5541 +    ACCCHK_ASSERT(__ACC_MASK_GEN(1u,1) == 1u)
  2.5542 +    ACCCHK_ASSERT(__ACC_MASK_GEN(1u,2) == 3u)
  2.5543 +    ACCCHK_ASSERT(__ACC_MASK_GEN(1u,3) == 7u)
  2.5544 +    ACCCHK_ASSERT(__ACC_MASK_GEN(1u,8) == 255u)
  2.5545 +#if (ACC_SIZEOF_INT >= 2)
  2.5546 +    ACCCHK_ASSERT(__ACC_MASK_GEN(1,15) == 32767)
  2.5547 +    ACCCHK_ASSERT(__ACC_MASK_GEN(1u,16) == 0xffffU)
  2.5548 +    ACCCHK_ASSERT(__ACC_MASK_GEN(0u,16) == 0u)
  2.5549 +#endif
  2.5550 +    ACCCHK_ASSERT(__ACC_MASK_GEN(1ul,16) == 0xffffUL)
  2.5551 +    ACCCHK_ASSERT(__ACC_MASK_GEN(0ul,16) == 0ul)
  2.5552 +#if (ACC_SIZEOF_INT >= 4)
  2.5553 +    ACCCHK_ASSERT(__ACC_MASK_GEN(1,31) == 2147483647)
  2.5554 +    ACCCHK_ASSERT(__ACC_MASK_GEN(1u,32) == 0xffffffffU)
  2.5555 +    ACCCHK_ASSERT(__ACC_MASK_GEN(0u,32) == 0u)
  2.5556 +#endif
  2.5557 +#if (ACC_SIZEOF_LONG >= 4)
  2.5558 +    ACCCHK_ASSERT(__ACC_MASK_GEN(1ul,32) == 0xffffffffUL)
  2.5559 +    ACCCHK_ASSERT(__ACC_MASK_GEN(0ul,32) == 0ul)
  2.5560 +#endif
  2.5561 +#if (ACC_SIZEOF_LONG >= 8)
  2.5562 +    ACCCHK_ASSERT(__ACC_MASK_GEN(1ul,64) == 0xffffffffffffffffUL)
  2.5563 +    ACCCHK_ASSERT(__ACC_MASK_GEN(0ul,64) == 0ul)
  2.5564 +#endif
  2.5565 +#if !(ACC_BROKEN_INTEGRAL_PROMOTION)
  2.5566 +    ACCCHK_ASSERT(__ACC_MASK_GEN(1u,ACC_SIZEOF_INT*8) == ~0u)
  2.5567 +    ACCCHK_ASSERT(__ACC_MASK_GEN(1ul,ACC_SIZEOF_LONG*8) == ~0ul)
  2.5568 +#endif
  2.5569 +#if 1
  2.5570 +    ACCCHK_ASSERT(__ACC_MASK_GEN(0,0) == 0)
  2.5571 +    ACCCHK_ASSERT(__ACC_MASK_GEN(1,0) == 0)
  2.5572 +    ACCCHK_ASSERT(__ACC_MASK_GEN(2,0) == 0)
  2.5573 +    ACCCHK_ASSERT(__ACC_MASK_GEN(4,0) == 0)
  2.5574 +#endif
  2.5575 +#if 1
  2.5576 +    ACCCHK_ASSERT(__ACC_MASK_GEN(2,1) == 2)
  2.5577 +    ACCCHK_ASSERT(__ACC_MASK_GEN(4,1) == 4)
  2.5578 +    ACCCHK_ASSERT(__ACC_MASK_GEN(8,1) == 8)
  2.5579 +    ACCCHK_ASSERT(__ACC_MASK_GEN(2,2) == 2+4)
  2.5580 +    ACCCHK_ASSERT(__ACC_MASK_GEN(4,2) == 4+8)
  2.5581 +    ACCCHK_ASSERT(__ACC_MASK_GEN(8,2) == 8+16)
  2.5582 +    ACCCHK_ASSERT(__ACC_MASK_GEN(2,3) == 2+4+8)
  2.5583 +    ACCCHK_ASSERT(__ACC_MASK_GEN(4,3) == 4+8+16)
  2.5584 +    ACCCHK_ASSERT(__ACC_MASK_GEN(8,3) == 8+16+32)
  2.5585 +    ACCCHK_ASSERT(__ACC_MASK_GEN(7,1) == 7)
  2.5586 +    ACCCHK_ASSERT(__ACC_MASK_GEN(7,2) == 7+14)
  2.5587 +    ACCCHK_ASSERT(__ACC_MASK_GEN(7,3) == 7+14+28)
  2.5588 +#endif
  2.5589 +#if !(ACC_BROKEN_SIGNED_RIGHT_SHIFT)
  2.5590 +    ACCCHK_ASSERT(((-1) >> 7) == -1)
  2.5591 +#endif
  2.5592 +    ACCCHK_ASSERT(((1)  >> 7) == 0)
  2.5593 +#if (ACC_CC_INTELC && (__INTEL_COMPILER >= 900))
  2.5594 +#  pragma warning(push)
  2.5595 +#  pragma warning(disable: 1025)
  2.5596 +#endif
  2.5597 +    ACCCHK_ASSERT((~0l  & ~0)  == ~0l)
  2.5598 +    ACCCHK_ASSERT((~0l  & ~0u) == ~0u)
  2.5599 +    ACCCHK_ASSERT((~0ul & ~0)  == ~0ul)
  2.5600 +    ACCCHK_ASSERT((~0ul & ~0u) == ~0u)
  2.5601 +#if defined(__MSDOS__) && defined(__TURBOC__) && (__TURBOC__ < 0x0150)
  2.5602 +#elif (ACC_SIZEOF_INT == 2)
  2.5603 +    ACCCHK_ASSERT((~0l  & ~0u) == 0xffffU)
  2.5604 +    ACCCHK_ASSERT((~0ul & ~0u) == 0xffffU)
  2.5605 +#elif (ACC_SIZEOF_INT == 4)
  2.5606 +    ACCCHK_ASSERT((~0l  & ~0u) == 0xffffffffU)
  2.5607 +    ACCCHK_ASSERT((~0ul & ~0u) == 0xffffffffU)
  2.5608 +#endif
  2.5609 +#if (ACC_CC_INTELC && (__INTEL_COMPILER >= 900))
  2.5610 +#  pragma warning(pop)
  2.5611 +#endif
  2.5612 +    ACCCHK_ASSERT_IS_SIGNED_T(signed char)
  2.5613 +    ACCCHK_ASSERT_IS_UNSIGNED_T(unsigned char)
  2.5614 +    ACCCHK_ASSERT(sizeof(signed char) == sizeof(char))
  2.5615 +    ACCCHK_ASSERT(sizeof(unsigned char) == sizeof(char))
  2.5616 +    ACCCHK_ASSERT(sizeof(char) == 1)
  2.5617 +#if (ACC_CC_CILLY) && (!defined(__CILLY__) || (__CILLY__ < 0x010302L))
  2.5618 +#else
  2.5619 +    ACCCHK_ASSERT(sizeof(char) == sizeof(ACC_STATIC_CAST(char, 0)))
  2.5620 +#endif
  2.5621 +#if defined(__cplusplus)
  2.5622 +    ACCCHK_ASSERT(sizeof('\0') == sizeof(char))
  2.5623 +#else
  2.5624 +#  if (ACC_CC_DMC)
  2.5625 +#  else
  2.5626 +    ACCCHK_ASSERT(sizeof('\0') == sizeof(int))
  2.5627 +#  endif
  2.5628 +#endif
  2.5629 +#if defined(__acc_alignof)
  2.5630 +    ACCCHK_ASSERT(__acc_alignof(char) == 1)
  2.5631 +    ACCCHK_ASSERT(__acc_alignof(signed char) == 1)
  2.5632 +    ACCCHK_ASSERT(__acc_alignof(unsigned char) == 1)
  2.5633 +#if defined(acc_int16e_t)
  2.5634 +    ACCCHK_ASSERT(__acc_alignof(acc_int16e_t) >= 1)
  2.5635 +    ACCCHK_ASSERT(__acc_alignof(acc_int16e_t) <= 2)
  2.5636 +#endif
  2.5637 +#if defined(acc_int32e_t)
  2.5638 +    ACCCHK_ASSERT(__acc_alignof(acc_int32e_t) >= 1)
  2.5639 +    ACCCHK_ASSERT(__acc_alignof(acc_int32e_t) <= 4)
  2.5640 +#endif
  2.5641 +#endif
  2.5642 +    ACCCHK_ASSERT_IS_SIGNED_T(short)
  2.5643 +    ACCCHK_ASSERT_IS_UNSIGNED_T(unsigned short)
  2.5644 +    ACCCHK_ASSERT(sizeof(short) == sizeof(unsigned short))
  2.5645 +#if !(ACC_ABI_I8LP16)
  2.5646 +    ACCCHK_ASSERT(sizeof(short) >= 2)
  2.5647 +#endif
  2.5648 +    ACCCHK_ASSERT(sizeof(short) >= sizeof(char))
  2.5649 +#if (ACC_CC_CILLY) && (!defined(__CILLY__) || (__CILLY__ < 0x010302L))
  2.5650 +#else
  2.5651 +    ACCCHK_ASSERT(sizeof(short) == sizeof(ACC_STATIC_CAST(short, 0)))
  2.5652 +#endif
  2.5653 +#if (ACC_SIZEOF_SHORT > 0)
  2.5654 +    ACCCHK_ASSERT(sizeof(short) == ACC_SIZEOF_SHORT)
  2.5655 +#endif
  2.5656 +    ACCCHK_ASSERT_IS_SIGNED_T(int)
  2.5657 +    ACCCHK_ASSERT_IS_UNSIGNED_T(unsigned int)
  2.5658 +    ACCCHK_ASSERT(sizeof(int) == sizeof(unsigned int))
  2.5659 +#if !(ACC_ABI_I8LP16)
  2.5660 +    ACCCHK_ASSERT(sizeof(int) >= 2)
  2.5661 +#endif
  2.5662 +    ACCCHK_ASSERT(sizeof(int) >= sizeof(short))
  2.5663 +    ACCCHK_ASSERT(sizeof(int) == sizeof(0))
  2.5664 +    ACCCHK_ASSERT(sizeof(int) == sizeof(ACC_STATIC_CAST(int, 0)))
  2.5665 +#if (ACC_SIZEOF_INT > 0)
  2.5666 +    ACCCHK_ASSERT(sizeof(int) == ACC_SIZEOF_INT)
  2.5667 +#endif
  2.5668 +    ACCCHK_ASSERT(sizeof(0) == sizeof(int))
  2.5669 +    ACCCHK_ASSERT_IS_SIGNED_T(long)
  2.5670 +    ACCCHK_ASSERT_IS_UNSIGNED_T(unsigned long)
  2.5671 +    ACCCHK_ASSERT(sizeof(long) == sizeof(unsigned long))
  2.5672 +#if !(ACC_ABI_I8LP16)
  2.5673 +    ACCCHK_ASSERT(sizeof(long) >= 4)
  2.5674 +#endif
  2.5675 +    ACCCHK_ASSERT(sizeof(long) >= sizeof(int))
  2.5676 +    ACCCHK_ASSERT(sizeof(long) == sizeof(0L))
  2.5677 +    ACCCHK_ASSERT(sizeof(long) == sizeof(ACC_STATIC_CAST(long, 0)))
  2.5678 +#if (ACC_SIZEOF_LONG > 0)
  2.5679 +    ACCCHK_ASSERT(sizeof(long) == ACC_SIZEOF_LONG)
  2.5680 +#endif
  2.5681 +    ACCCHK_ASSERT(sizeof(0L) == sizeof(long))
  2.5682 +    ACCCHK_ASSERT_IS_UNSIGNED_T(size_t)
  2.5683 +    ACCCHK_ASSERT(sizeof(size_t) >= sizeof(int))
  2.5684 +    ACCCHK_ASSERT(sizeof(size_t) == sizeof(sizeof(0)))
  2.5685 +#if (ACC_SIZEOF_SIZE_T > 0)
  2.5686 +    ACCCHK_ASSERT(sizeof(size_t) == ACC_SIZEOF_SIZE_T)
  2.5687 +#endif
  2.5688 +    ACCCHK_ASSERT_IS_SIGNED_T(ptrdiff_t)
  2.5689 +    ACCCHK_ASSERT(sizeof(ptrdiff_t) >= sizeof(int))
  2.5690 +    ACCCHK_ASSERT(sizeof(ptrdiff_t) >= sizeof(size_t))
  2.5691 +#if !(ACC_BROKEN_SIZEOF)
  2.5692 +    ACCCHK_ASSERT(sizeof(ptrdiff_t) == sizeof(ACC_STATIC_CAST(char*, 0) - ACC_STATIC_CAST(char*, 0)))
  2.5693 +# if (ACC_HAVE_MM_HUGE_PTR)
  2.5694 +    ACCCHK_ASSERT(4 == sizeof(ACC_STATIC_CAST(char __huge*, 0) - ACC_STATIC_CAST(char __huge*, 0)))
  2.5695 +# endif
  2.5696 +#endif
  2.5697 +#if (ACC_SIZEOF_PTRDIFF_T > 0)
  2.5698 +    ACCCHK_ASSERT(sizeof(ptrdiff_t) == ACC_SIZEOF_PTRDIFF_T)
  2.5699 +#endif
  2.5700 +    ACCCHK_ASSERT(sizeof(void*) >= sizeof(char*))
  2.5701 +#if (ACC_SIZEOF_VOID_P > 0)
  2.5702 +    ACCCHK_ASSERT(sizeof(void*) == ACC_SIZEOF_VOID_P)
  2.5703 +    ACCCHK_ASSERT(sizeof(char*) == ACC_SIZEOF_VOID_P)
  2.5704 +#endif
  2.5705 +#if (ACC_HAVE_MM_HUGE_PTR)
  2.5706 +    ACCCHK_ASSERT(4 == sizeof(void __huge*))
  2.5707 +    ACCCHK_ASSERT(4 == sizeof(char __huge*))
  2.5708 +#endif
  2.5709 +#if (ACC_ABI_I8LP16)
  2.5710 +    ACCCHK_ASSERT((((1u  <<  7) + 1) >>  7) == 1)
  2.5711 +    ACCCHK_ASSERT((((1ul << 15) + 1) >> 15) == 1)
  2.5712 +#else
  2.5713 +    ACCCHK_ASSERT((((1u  << 15) + 1) >> 15) == 1)
  2.5714 +    ACCCHK_ASSERT((((1ul << 31) + 1) >> 31) == 1)
  2.5715 +#endif
  2.5716 +#if defined(ACCCHK_CFG_PEDANTIC)
  2.5717 +#if defined(__MSDOS__) && defined(__TURBOC__) && (__TURBOC__ < 0x0150)
  2.5718 +#else
  2.5719 +    ACCCHK_ASSERT((1   << (8*ACC_SIZEOF_INT-1)) < 0)
  2.5720 +#endif
  2.5721 +#endif
  2.5722 +    ACCCHK_ASSERT((1u  << (8*ACC_SIZEOF_INT-1)) > 0)
  2.5723 +#if defined(ACCCHK_CFG_PEDANTIC)
  2.5724 +    ACCCHK_ASSERT((1l  << (8*ACC_SIZEOF_LONG-1)) < 0)
  2.5725 +#endif
  2.5726 +    ACCCHK_ASSERT((1ul << (8*ACC_SIZEOF_LONG-1)) > 0)
  2.5727 +#if defined(acc_int16e_t)
  2.5728 +    ACCCHK_ASSERT(sizeof(acc_int16e_t) == 2)
  2.5729 +    ACCCHK_ASSERT(sizeof(acc_int16e_t) == ACC_SIZEOF_ACC_INT16E_T)
  2.5730 +    ACCCHK_ASSERT(sizeof(acc_uint16e_t) == 2)
  2.5731 +    ACCCHK_ASSERT(sizeof(acc_int16e_t) == sizeof(acc_uint16e_t))
  2.5732 +    ACCCHK_ASSERT_IS_SIGNED_T(acc_int16e_t)
  2.5733 +    ACCCHK_ASSERT_IS_UNSIGNED_T(acc_uint16e_t)
  2.5734 +#if defined(__MSDOS__) && defined(__TURBOC__) && (__TURBOC__ < 0x0150)
  2.5735 +#else
  2.5736 +    ACCCHK_ASSERT((ACC_STATIC_CAST(acc_uint16e_t, (~ACC_STATIC_CAST(acc_uint16e_t,0ul))) >> 15) == 1)
  2.5737 +#endif
  2.5738 +    ACCCHK_ASSERT( ACC_STATIC_CAST(acc_int16e_t, (1 + ~ACC_STATIC_CAST(acc_int16e_t, 0))) == 0)
  2.5739 +#if defined(ACCCHK_CFG_PEDANTIC)
  2.5740 +    ACCCHK_ASSERT( ACC_STATIC_CAST(acc_uint16e_t, (1 + ~ACC_STATIC_CAST(acc_uint16e_t, 0))) == 0)
  2.5741 +#endif
  2.5742 +#endif
  2.5743 +#if defined(acc_int32e_t)
  2.5744 +    ACCCHK_ASSERT(sizeof(acc_int32e_t) == 4)
  2.5745 +    ACCCHK_ASSERT(sizeof(acc_int32e_t) == ACC_SIZEOF_ACC_INT32E_T)
  2.5746 +    ACCCHK_ASSERT(sizeof(acc_uint32e_t) == 4)
  2.5747 +    ACCCHK_ASSERT(sizeof(acc_int32e_t) == sizeof(acc_uint32e_t))
  2.5748 +    ACCCHK_ASSERT_IS_SIGNED_T(acc_int32e_t)
  2.5749 +    ACCCHK_ASSERT(((( ACC_STATIC_CAST(acc_int32e_t, 1) << 30) + 1) >> 30) == 1)
  2.5750 +    ACCCHK_ASSERT_IS_UNSIGNED_T(acc_uint32e_t)
  2.5751 +    ACCCHK_ASSERT(((( ACC_STATIC_CAST(acc_uint32e_t, 1) << 31) + 1) >> 31) == 1)
  2.5752 +    ACCCHK_ASSERT((ACC_STATIC_CAST(acc_uint32e_t, (~ACC_STATIC_CAST(acc_uint32e_t, 0ul))) >> 31) == 1)
  2.5753 +    ACCCHK_ASSERT( ACC_STATIC_CAST(acc_int32e_t, (1 + ~ACC_STATIC_CAST(acc_int32e_t, 0))) == 0)
  2.5754 +#if defined(ACCCHK_CFG_PEDANTIC)
  2.5755 +    ACCCHK_ASSERT( ACC_STATIC_CAST(acc_uint32e_t, (1 + ~ACC_STATIC_CAST(acc_uint32e_t, 0))) == 0)
  2.5756 +#endif
  2.5757 +#endif
  2.5758 +#if defined(acc_int32e_t)
  2.5759 +    ACCCHK_ASSERT(sizeof(acc_int32l_t) >= sizeof(acc_int32e_t))
  2.5760 +#endif
  2.5761 +    ACCCHK_ASSERT(sizeof(acc_int32l_t) >= 4)
  2.5762 +    ACCCHK_ASSERT(sizeof(acc_int32l_t) == ACC_SIZEOF_ACC_INT32L_T)
  2.5763 +    ACCCHK_ASSERT(sizeof(acc_uint32l_t) >= 4)
  2.5764 +    ACCCHK_ASSERT(sizeof(acc_int32l_t) == sizeof(acc_uint32l_t))
  2.5765 +    ACCCHK_ASSERT_IS_SIGNED_T(acc_int32l_t)
  2.5766 +    ACCCHK_ASSERT(((( ACC_STATIC_CAST(acc_int32l_t, 1) << 30) + 1) >> 30) == 1)
  2.5767 +    ACCCHK_ASSERT_IS_UNSIGNED_T(acc_uint32l_t)
  2.5768 +    ACCCHK_ASSERT(((( ACC_STATIC_CAST(acc_uint32l_t, 1) << 31) + 1) >> 31) == 1)
  2.5769 +    ACCCHK_ASSERT(sizeof(acc_int32f_t) >= sizeof(int))
  2.5770 +#if defined(acc_int32e_t)
  2.5771 +    ACCCHK_ASSERT(sizeof(acc_int32f_t) >= sizeof(acc_int32e_t))
  2.5772 +#endif
  2.5773 +    ACCCHK_ASSERT(sizeof(acc_int32f_t) >= sizeof(acc_int32l_t))
  2.5774 +    ACCCHK_ASSERT(sizeof(acc_int32f_t) >= 4)
  2.5775 +    ACCCHK_ASSERT(sizeof(acc_int32f_t) >= sizeof(acc_int32l_t))
  2.5776 +    ACCCHK_ASSERT(sizeof(acc_int32f_t) == ACC_SIZEOF_ACC_INT32F_T)
  2.5777 +    ACCCHK_ASSERT(sizeof(acc_uint32f_t) >= 4)
  2.5778 +    ACCCHK_ASSERT(sizeof(acc_uint32f_t) >= sizeof(acc_uint32l_t))
  2.5779 +    ACCCHK_ASSERT(sizeof(acc_int32f_t) == sizeof(acc_uint32f_t))
  2.5780 +    ACCCHK_ASSERT_IS_SIGNED_T(acc_int32f_t)
  2.5781 +    ACCCHK_ASSERT(((( ACC_STATIC_CAST(acc_int32f_t, 1) << 30) + 1) >> 30) == 1)
  2.5782 +    ACCCHK_ASSERT_IS_UNSIGNED_T(acc_uint32f_t)
  2.5783 +    ACCCHK_ASSERT(((( ACC_STATIC_CAST(acc_uint32f_t, 1) << 31) + 1) >> 31) == 1)
  2.5784 +#if defined(acc_int64e_t)
  2.5785 +    ACCCHK_ASSERT(sizeof(acc_int64e_t) == 8)
  2.5786 +    ACCCHK_ASSERT(sizeof(acc_int64e_t) == ACC_SIZEOF_ACC_INT64E_T)
  2.5787 +    ACCCHK_ASSERT(sizeof(acc_uint64e_t) == 8)
  2.5788 +    ACCCHK_ASSERT(sizeof(acc_int64e_t) == sizeof(acc_uint64e_t))
  2.5789 +    ACCCHK_ASSERT_IS_SIGNED_T(acc_int64e_t)
  2.5790 +#if (ACC_CC_BORLANDC && (__BORLANDC__ < 0x0530))
  2.5791 +#else
  2.5792 +    ACCCHK_ASSERT_IS_UNSIGNED_T(acc_uint64e_t)
  2.5793 +#endif
  2.5794 +#endif
  2.5795 +#if defined(acc_int64l_t)
  2.5796 +#if defined(acc_int64e_t)
  2.5797 +    ACCCHK_ASSERT(sizeof(acc_int64l_t) >= sizeof(acc_int64e_t))
  2.5798 +#endif
  2.5799 +    ACCCHK_ASSERT(sizeof(acc_int64l_t) >= 8)
  2.5800 +    ACCCHK_ASSERT(sizeof(acc_int64l_t) == ACC_SIZEOF_ACC_INT64L_T)
  2.5801 +    ACCCHK_ASSERT(sizeof(acc_uint64l_t) >= 8)
  2.5802 +    ACCCHK_ASSERT(sizeof(acc_int64l_t) == sizeof(acc_uint64l_t))
  2.5803 +    ACCCHK_ASSERT_IS_SIGNED_T(acc_int64l_t)
  2.5804 +    ACCCHK_ASSERT(((( ACC_STATIC_CAST(acc_int64l_t, 1) << 62) + 1) >> 62) == 1)
  2.5805 +    ACCCHK_ASSERT(((( ACC_INT64_C(1) << 62) + 1) >> 62) == 1)
  2.5806 +#if (ACC_CC_BORLANDC && (__BORLANDC__ < 0x0530))
  2.5807 +#else
  2.5808 +    ACCCHK_ASSERT_IS_UNSIGNED_T(acc_uint64l_t)
  2.5809 +    ACCCHK_ASSERT(ACC_UINT64_C(18446744073709551615)     > 0)
  2.5810 +#endif
  2.5811 +    ACCCHK_ASSERT(((( ACC_STATIC_CAST(acc_uint64l_t, 1) << 63) + 1) >> 63) == 1)
  2.5812 +    ACCCHK_ASSERT(((( ACC_UINT64_C(1) << 63) + 1) >> 63) == 1)
  2.5813 +#if (ACC_CC_GNUC && (ACC_CC_GNUC < 0x020600ul))
  2.5814 +    ACCCHK_ASSERT(ACC_INT64_C(9223372036854775807)       > ACC_INT64_C(0))
  2.5815 +#else
  2.5816 +    ACCCHK_ASSERT(ACC_INT64_C(9223372036854775807)       > 0)
  2.5817 +#endif
  2.5818 +    ACCCHK_ASSERT(ACC_INT64_C(-9223372036854775807) - 1  < 0)
  2.5819 +    ACCCHK_ASSERT( ACC_INT64_C(9223372036854775807) % ACC_INT32_C(2147483629)  == 721)
  2.5820 +    ACCCHK_ASSERT( ACC_INT64_C(9223372036854775807) % ACC_INT32_C(2147483647)  == 1)
  2.5821 +    ACCCHK_ASSERT(ACC_UINT64_C(9223372036854775807) % ACC_UINT32_C(2147483629) == 721)
  2.5822 +    ACCCHK_ASSERT(ACC_UINT64_C(9223372036854775807) % ACC_UINT32_C(2147483647) == 1)
  2.5823 +#endif
  2.5824 +#if defined(acc_int64f_t)
  2.5825 +#if defined(acc_int64e_t)
  2.5826 +    ACCCHK_ASSERT(sizeof(acc_int64f_t) >= sizeof(acc_int64e_t))
  2.5827 +#endif
  2.5828 +    ACCCHK_ASSERT(sizeof(acc_int64f_t) >= sizeof(acc_int64l_t))
  2.5829 +    ACCCHK_ASSERT(sizeof(acc_int64f_t) >= 8)
  2.5830 +    ACCCHK_ASSERT(sizeof(acc_int64f_t) >= sizeof(acc_int64l_t))
  2.5831 +    ACCCHK_ASSERT(sizeof(acc_int64f_t) == ACC_SIZEOF_ACC_INT64F_T)
  2.5832 +    ACCCHK_ASSERT(sizeof(acc_uint64f_t) >= 8)
  2.5833 +    ACCCHK_ASSERT(sizeof(acc_uint64f_t) >= sizeof(acc_uint64l_t))
  2.5834 +    ACCCHK_ASSERT(sizeof(acc_int64f_t) == sizeof(acc_uint64f_t))
  2.5835 +    ACCCHK_ASSERT_IS_SIGNED_T(acc_int64f_t)
  2.5836 +#if (ACC_CC_BORLANDC && (__BORLANDC__ < 0x0530))
  2.5837 +#else
  2.5838 +    ACCCHK_ASSERT_IS_UNSIGNED_T(acc_uint64f_t)
  2.5839 +#endif
  2.5840 +#endif
  2.5841 +#if !defined(__ACC_INTPTR_T_IS_POINTER)
  2.5842 +    ACCCHK_ASSERT_IS_SIGNED_T(acc_intptr_t)
  2.5843 +    ACCCHK_ASSERT_IS_UNSIGNED_T(acc_uintptr_t)
  2.5844 +#endif
  2.5845 +    ACCCHK_ASSERT(sizeof(acc_intptr_t) >= sizeof(void *))
  2.5846 +    ACCCHK_ASSERT(sizeof(acc_intptr_t) == ACC_SIZEOF_ACC_INTPTR_T)
  2.5847 +    ACCCHK_ASSERT(sizeof(acc_intptr_t) == sizeof(acc_uintptr_t))
  2.5848 +#if defined(acc_word_t)
  2.5849 +    ACCCHK_ASSERT(ACC_WORDSIZE == ACC_SIZEOF_ACC_WORD_T)
  2.5850 +    ACCCHK_ASSERT_IS_UNSIGNED_T(acc_word_t)
  2.5851 +    ACCCHK_ASSERT_IS_SIGNED_T(acc_sword_t)
  2.5852 +    ACCCHK_ASSERT(sizeof(acc_word_t) == ACC_SIZEOF_ACC_WORD_T)
  2.5853 +    ACCCHK_ASSERT(sizeof(acc_word_t) == sizeof(acc_sword_t))
  2.5854 +#endif
  2.5855 +    ACCCHK_ASSERT(sizeof(acc_int8_t) == 1)
  2.5856 +    ACCCHK_ASSERT(sizeof(acc_uint8_t) == 1)
  2.5857 +    ACCCHK_ASSERT(sizeof(acc_int8_t) == sizeof(acc_uint8_t))
  2.5858 +    ACCCHK_ASSERT_IS_SIGNED_T(acc_int8_t)
  2.5859 +    ACCCHK_ASSERT_IS_UNSIGNED_T(acc_uint8_t)
  2.5860 +#if defined(ACC_INT16_C)
  2.5861 +    ACCCHK_ASSERT(sizeof(ACC_INT16_C(0)) >= 2)
  2.5862 +    ACCCHK_ASSERT(sizeof(ACC_UINT16_C(0)) >= 2)
  2.5863 +    ACCCHK_ASSERT((ACC_UINT16_C(0xffff) >> 15) == 1)
  2.5864 +#endif
  2.5865 +#if defined(ACC_INT32_C)
  2.5866 +    ACCCHK_ASSERT(sizeof(ACC_INT32_C(0)) >= 4)
  2.5867 +    ACCCHK_ASSERT(sizeof(ACC_UINT32_C(0)) >= 4)
  2.5868 +    ACCCHK_ASSERT((ACC_UINT32_C(0xffffffff) >> 31) == 1)
  2.5869 +#endif
  2.5870 +#if defined(ACC_INT64_C)
  2.5871 +#if (ACC_CC_BORLANDC && (__BORLANDC__ < 0x0560))
  2.5872 +#else
  2.5873 +    ACCCHK_ASSERT(sizeof(ACC_INT64_C(0)) >= 8)
  2.5874 +    ACCCHK_ASSERT(sizeof(ACC_UINT64_C(0)) >= 8)
  2.5875 +#endif
  2.5876 +    ACCCHK_ASSERT((ACC_UINT64_C(0xffffffffffffffff) >> 63) == 1)
  2.5877 +    ACCCHK_ASSERT((ACC_UINT64_C(0xffffffffffffffff) & ~0)  == ACC_UINT64_C(0xffffffffffffffff))
  2.5878 +    ACCCHK_ASSERT((ACC_UINT64_C(0xffffffffffffffff) & ~0l) == ACC_UINT64_C(0xffffffffffffffff))
  2.5879 +#if (ACC_SIZEOF_INT == 4)
  2.5880 +# if (ACC_CC_GNUC && (ACC_CC_GNUC < 0x020000ul))
  2.5881 +# else
  2.5882 +    ACCCHK_ASSERT((ACC_UINT64_C(0xffffffffffffffff) & (~0u+0u)) == 0xffffffffu)
  2.5883 +# endif
  2.5884 +#endif
  2.5885 +#if (ACC_SIZEOF_LONG == 4)
  2.5886 +# if (ACC_CC_GNUC && (ACC_CC_GNUC < 0x020000ul))
  2.5887 +# else
  2.5888 +    ACCCHK_ASSERT((ACC_UINT64_C(0xffffffffffffffff) & (~0ul+0ul)) == 0xfffffffful)
  2.5889 +# endif
  2.5890 +#endif
  2.5891 +#endif
  2.5892 +#if (ACC_MM_TINY || ACC_MM_SMALL || ACC_MM_MEDIUM)
  2.5893 +    ACCCHK_ASSERT(sizeof(void*) == 2)
  2.5894 +    ACCCHK_ASSERT(sizeof(ptrdiff_t) == 2)
  2.5895 +#elif (ACC_MM_COMPACT || ACC_MM_LARGE || ACC_MM_HUGE)
  2.5896 +    ACCCHK_ASSERT(sizeof(void*) == 4)
  2.5897 +#endif
  2.5898 +#if (ACC_MM_TINY || ACC_MM_SMALL || ACC_MM_COMPACT)
  2.5899 +    ACCCHK_ASSERT(sizeof(void (*)(void)) == 2)
  2.5900 +#elif (ACC_MM_MEDIUM || ACC_MM_LARGE || ACC_MM_HUGE)
  2.5901 +    ACCCHK_ASSERT(sizeof(void (*)(void)) == 4)
  2.5902 +#endif
  2.5903 +#if (ACC_ABI_ILP32)
  2.5904 +    ACCCHK_ASSERT(sizeof(int) == 4)
  2.5905 +    ACCCHK_ASSERT(sizeof(long) == 4)
  2.5906 +    ACCCHK_ASSERT(sizeof(void*) == 4)
  2.5907 +    ACCCHK_ASSERT(sizeof(ptrdiff_t) == sizeof(void*))
  2.5908 +    ACCCHK_ASSERT(sizeof(size_t) == sizeof(void*))
  2.5909 +    ACCCHK_ASSERT(sizeof(acc_intptr_t) == sizeof(void *))
  2.5910 +#endif
  2.5911 +#if (ACC_ABI_ILP64)
  2.5912 +    ACCCHK_ASSERT(sizeof(int) == 8)
  2.5913 +    ACCCHK_ASSERT(sizeof(long) == 8)
  2.5914 +    ACCCHK_ASSERT(sizeof(void*) == 8)
  2.5915 +    ACCCHK_ASSERT(sizeof(ptrdiff_t) == sizeof(void*))
  2.5916 +    ACCCHK_ASSERT(sizeof(size_t) == sizeof(void*))
  2.5917 +    ACCCHK_ASSERT(sizeof(acc_intptr_t) == sizeof(void *))
  2.5918 +#endif
  2.5919 +#if (ACC_ABI_IP32L64)
  2.5920 +    ACCCHK_ASSERT(sizeof(int) == 4)
  2.5921 +    ACCCHK_ASSERT(sizeof(long) == 8)
  2.5922 +    ACCCHK_ASSERT(sizeof(void*) == 4)
  2.5923 +    ACCCHK_ASSERT(sizeof(ptrdiff_t) == sizeof(void*))
  2.5924 +    ACCCHK_ASSERT(sizeof(size_t) == sizeof(void*))
  2.5925 +    ACCCHK_ASSERT(sizeof(acc_intptr_t) == sizeof(void *))
  2.5926 +#endif
  2.5927 +#if (ACC_ABI_LLP64)
  2.5928 +    ACCCHK_ASSERT(sizeof(int) == 4)
  2.5929 +    ACCCHK_ASSERT(sizeof(long) == 4)
  2.5930 +    ACCCHK_ASSERT(sizeof(void*) == 8)
  2.5931 +    ACCCHK_ASSERT(sizeof(ptrdiff_t) == sizeof(void*))
  2.5932 +    ACCCHK_ASSERT(sizeof(size_t) == sizeof(void*))
  2.5933 +    ACCCHK_ASSERT(sizeof(acc_intptr_t) == sizeof(void *))
  2.5934 +#endif
  2.5935 +#if (ACC_ABI_LP32)
  2.5936 +    ACCCHK_ASSERT(sizeof(int) == 2)
  2.5937 +    ACCCHK_ASSERT(sizeof(long) == 4)
  2.5938 +    ACCCHK_ASSERT(sizeof(void*) == 4)
  2.5939 +    ACCCHK_ASSERT(sizeof(acc_intptr_t) == sizeof(void *))
  2.5940 +#endif
  2.5941 +#if (ACC_ABI_LP64)
  2.5942 +    ACCCHK_ASSERT(sizeof(int) == 4)
  2.5943 +    ACCCHK_ASSERT(sizeof(long) == 8)
  2.5944 +    ACCCHK_ASSERT(sizeof(void*) == 8)
  2.5945 +    ACCCHK_ASSERT(sizeof(ptrdiff_t) == sizeof(void*))
  2.5946 +    ACCCHK_ASSERT(sizeof(size_t) == sizeof(void*))
  2.5947 +    ACCCHK_ASSERT(sizeof(acc_intptr_t) == sizeof(void *))
  2.5948 +#endif
  2.5949 +#if (ACC_ABI_IP32W64)
  2.5950 +    ACCCHK_ASSERT(sizeof(int) == 4)
  2.5951 +    ACCCHK_ASSERT(sizeof(void*) == 4)
  2.5952 +    ACCCHK_ASSERT(sizeof(ptrdiff_t) == sizeof(void*))
  2.5953 +    ACCCHK_ASSERT(sizeof(size_t) == sizeof(void*))
  2.5954 +    ACCCHK_ASSERT(sizeof(acc_intptr_t) == sizeof(void *))
  2.5955 +    ACCCHK_ASSERT(ACC_WORDSIZE == 8)
  2.5956 +#endif
  2.5957 +#if (ACC_ARCH_I086)
  2.5958 +    ACCCHK_ASSERT(sizeof(size_t) == 2)
  2.5959 +    ACCCHK_ASSERT(sizeof(acc_intptr_t) == sizeof(void *))
  2.5960 +#elif (ACC_ARCH_I386 || ACC_ARCH_M68K)
  2.5961 +    ACCCHK_ASSERT(sizeof(size_t) == 4)
  2.5962 +    ACCCHK_ASSERT(sizeof(ptrdiff_t) == 4)
  2.5963 +    ACCCHK_ASSERT(sizeof(acc_intptr_t) == sizeof(void *))
  2.5964 +#endif
  2.5965 +#if (ACC_OS_DOS32 || ACC_OS_OS2 || ACC_OS_WIN32)
  2.5966 +    ACCCHK_ASSERT(sizeof(size_t) == 4)
  2.5967 +    ACCCHK_ASSERT(sizeof(ptrdiff_t) == 4)
  2.5968 +    ACCCHK_ASSERT(sizeof(void (*)(void)) == 4)
  2.5969 +#elif (ACC_OS_WIN64)
  2.5970 +    ACCCHK_ASSERT(sizeof(size_t) == 8)
  2.5971 +    ACCCHK_ASSERT(sizeof(ptrdiff_t) == 8)
  2.5972 +    ACCCHK_ASSERT(sizeof(void (*)(void)) == 8)
  2.5973 +#endif
  2.5974 +#if (ACC_CC_NDPC)
  2.5975 +#elif (ACC_SIZEOF_INT > 1)
  2.5976 +    ACCCHK_ASSERT( ACC_STATIC_CAST(int, ACC_STATIC_CAST(unsigned char, ACC_STATIC_CAST(signed char, -1))) == 255)
  2.5977 +#endif
  2.5978 +#if defined(ACCCHK_CFG_PEDANTIC)
  2.5979 +#if (ACC_CC_KEILC)
  2.5980 +#elif (ACC_CC_NDPC)
  2.5981 +#elif !(ACC_BROKEN_INTEGRAL_PROMOTION) && (ACC_SIZEOF_INT > 1)
  2.5982 +    ACCCHK_ASSERT( ((ACC_STATIC_CAST(unsigned char, 128)) << ACC_STATIC_CAST(int, (8*sizeof(int)-8))) < 0)
  2.5983 +#endif
  2.5984 +#endif
  2.5985 +#if defined(ACCCHK_CFG_PEDANTIC)
  2.5986 +#if (ACC_CC_BORLANDC && (__BORLANDC__ >= 0x0530) && (__BORLANDC__ < 0x0560))
  2.5987 +#  pragma option pop
  2.5988 +#endif
  2.5989 +#endif
  2.5990 +#endif
  2.5991 +#if defined(ACC_WANT_ACCLIB_UA)
  2.5992 +#  undef ACC_WANT_ACCLIB_UA
  2.5993 +#define __ACCLIB_UA_CH_INCLUDED 1
  2.5994 +#if !defined(ACCLIB_PUBLIC)
  2.5995 +#  define ACCLIB_PUBLIC(r,f)    r __ACCLIB_FUNCNAME(f)
  2.5996 +#endif
  2.5997 +ACCLIB_PUBLIC(unsigned, acc_ua_get_be16) (const acc_hvoid_p p)
  2.5998 +{
  2.5999 +#if defined(ACC_UA_GET_BE16)
  2.6000 +    return ACC_UA_GET_BE16(p);
  2.6001 +#else
  2.6002 +    const acc_hbyte_p b = ACC_CCAST(const acc_hbyte_p, p);
  2.6003 +    return ACC_ICONV(unsigned, b[1]) | (ACC_ICONV(unsigned, b[0]) << 8);
  2.6004 +#endif
  2.6005 +}
  2.6006 +ACCLIB_PUBLIC(acc_uint32l_t, acc_ua_get_be24) (const acc_hvoid_p p)
  2.6007 +{
  2.6008 +    const acc_hbyte_p b = ACC_CCAST(const acc_hbyte_p, p);
  2.6009 +    return ACC_ICONV(acc_uint32l_t, b[2]) | (ACC_ICONV(acc_uint32l_t, b[1]) << 8) | (ACC_ICONV(acc_uint32l_t, b[0]) << 16);
  2.6010 +}
  2.6011 +ACCLIB_PUBLIC(acc_uint32l_t, acc_ua_get_be32) (const acc_hvoid_p p)
  2.6012 +{
  2.6013 +#if defined(ACC_UA_GET_BE32)
  2.6014 +    return ACC_UA_GET_BE32(p);
  2.6015 +#else
  2.6016 +    const acc_hbyte_p b = ACC_CCAST(const acc_hbyte_p, p);
  2.6017 +    return ACC_ICONV(acc_uint32l_t, b[3]) | (ACC_ICONV(acc_uint32l_t, b[2]) << 8) | (ACC_ICONV(acc_uint32l_t, b[1]) << 16) | (ACC_ICONV(acc_uint32l_t, b[0]) << 24);
  2.6018 +#endif
  2.6019 +}
  2.6020 +ACCLIB_PUBLIC(void, acc_ua_set_be16) (acc_hvoid_p p, unsigned v)
  2.6021 +{
  2.6022 +#if defined(ACC_UA_SET_BE16)
  2.6023 +    ACC_UA_SET_BE16(p, v);
  2.6024 +#else
  2.6025 +    acc_hbyte_p b = ACC_PCAST(acc_hbyte_p, p);
  2.6026 +    b[1] = ACC_ICONV(unsigned char, (v >>  0) & 0xff);
  2.6027 +    b[0] = ACC_ICONV(unsigned char, (v >>  8) & 0xff);
  2.6028 +#endif
  2.6029 +}
  2.6030 +ACCLIB_PUBLIC(void, acc_ua_set_be24) (acc_hvoid_p p, acc_uint32l_t v)
  2.6031 +{
  2.6032 +    acc_hbyte_p b = ACC_PCAST(acc_hbyte_p, p);
  2.6033 +    b[2] = ACC_ICONV(unsigned char, (v >>  0) & 0xff);
  2.6034 +    b[1] = ACC_ICONV(unsigned char, (v >>  8) & 0xff);
  2.6035 +    b[0] = ACC_ICONV(unsigned char, (v >> 16) & 0xff);
  2.6036 +}
  2.6037 +ACCLIB_PUBLIC(void, acc_ua_set_be32) (acc_hvoid_p p, acc_uint32l_t v)
  2.6038 +{
  2.6039 +#if defined(ACC_UA_SET_BE32)
  2.6040 +    ACC_UA_SET_BE32(p, v);
  2.6041 +#else
  2.6042 +    acc_hbyte_p b = ACC_PCAST(acc_hbyte_p, p);
  2.6043 +    b[3] = ACC_ICONV(unsigned char, (v >>  0) & 0xff);
  2.6044 +    b[2] = ACC_ICONV(unsigned char, (v >>  8) & 0xff);
  2.6045 +    b[1] = ACC_ICONV(unsigned char, (v >> 16) & 0xff);
  2.6046 +    b[0] = ACC_ICONV(unsigned char, (v >> 24) & 0xff);
  2.6047 +#endif
  2.6048 +}
  2.6049 +ACCLIB_PUBLIC(unsigned, acc_ua_get_le16) (const acc_hvoid_p p)
  2.6050 +{
  2.6051 +#if defined(ACC_UA_GET_LE16)
  2.6052 +    return ACC_UA_GET_LE16(p);
  2.6053 +#else
  2.6054 +    const acc_hbyte_p b = ACC_CCAST(const acc_hbyte_p, p);
  2.6055 +    return ACC_ICONV(unsigned, b[0]) | (ACC_ICONV(unsigned, b[1]) << 8);
  2.6056 +#endif
  2.6057 +}
  2.6058 +ACCLIB_PUBLIC(acc_uint32l_t, acc_ua_get_le24) (const acc_hvoid_p p)
  2.6059 +{
  2.6060 +    const acc_hbyte_p b = ACC_CCAST(const acc_hbyte_p, p);
  2.6061 +    return ACC_ICONV(acc_uint32l_t, b[0]) | (ACC_ICONV(acc_uint32l_t, b[1]) << 8) | (ACC_ICONV(acc_uint32l_t, b[2]) << 16);
  2.6062 +}
  2.6063 +ACCLIB_PUBLIC(acc_uint32l_t, acc_ua_get_le32) (const acc_hvoid_p p)
  2.6064 +{
  2.6065 +#if defined(ACC_UA_GET_LE32)
  2.6066 +    return ACC_UA_GET_LE32(p);
  2.6067 +#else
  2.6068 +    const acc_hbyte_p b = ACC_CCAST(const acc_hbyte_p, p);
  2.6069 +    return ACC_ICONV(acc_uint32l_t, b[0]) | (ACC_ICONV(acc_uint32l_t, b[1]) << 8) | (ACC_ICONV(acc_uint32l_t, b[2]) << 16) | (ACC_ICONV(acc_uint32l_t, b[3]) << 24);
  2.6070 +#endif
  2.6071 +}
  2.6072 +ACCLIB_PUBLIC(void, acc_ua_set_le16) (acc_hvoid_p p, unsigned v)
  2.6073 +{
  2.6074 +#if defined(ACC_UA_SET_LE16)
  2.6075 +    ACC_UA_SET_LE16(p, v);
  2.6076 +#else
  2.6077 +    acc_hbyte_p b = ACC_PCAST(acc_hbyte_p, p);
  2.6078 +    b[0] = ACC_ICONV(unsigned char, (v >>  0) & 0xff);
  2.6079 +    b[1] = ACC_ICONV(unsigned char, (v >>  8) & 0xff);
  2.6080 +#endif
  2.6081 +}
  2.6082 +ACCLIB_PUBLIC(void, acc_ua_set_le24) (acc_hvoid_p p, acc_uint32l_t v)
  2.6083 +{
  2.6084 +    acc_hbyte_p b = ACC_PCAST(acc_hbyte_p, p);
  2.6085 +    b[0] = ACC_ICONV(unsigned char, (v >>  0) & 0xff);
  2.6086 +    b[1] = ACC_ICONV(unsigned char, (v >>  8) & 0xff);
  2.6087 +    b[2] = ACC_ICONV(unsigned char, (v >> 16) & 0xff);
  2.6088 +}
  2.6089 +ACCLIB_PUBLIC(void, acc_ua_set_le32) (acc_hvoid_p p, acc_uint32l_t v)
  2.6090 +{
  2.6091 +#if defined(ACC_UA_SET_LE32)
  2.6092 +    ACC_UA_SET_LE32(p, v);
  2.6093 +#else
  2.6094 +    acc_hbyte_p b = ACC_PCAST(acc_hbyte_p, p);
  2.6095 +    b[0] = ACC_ICONV(unsigned char, (v >>  0) & 0xff);
  2.6096 +    b[1] = ACC_ICONV(unsigned char, (v >>  8) & 0xff);
  2.6097 +    b[2] = ACC_ICONV(unsigned char, (v >> 16) & 0xff);
  2.6098 +    b[3] = ACC_ICONV(unsigned char, (v >> 24) & 0xff);
  2.6099 +#endif
  2.6100 +}
  2.6101 +#if defined(acc_int64l_t)
  2.6102 +ACCLIB_PUBLIC(acc_uint64l_t, acc_ua_get_be64) (const acc_hvoid_p p)
  2.6103 +{
  2.6104 +#if defined(ACC_UA_GET_BE64)
  2.6105 +    return ACC_UA_GET_BE64(p);
  2.6106 +#elif defined(ACC_UA_GET_BE32)
  2.6107 +    const acc_hbyte_p b = ACC_CCAST(const acc_hbyte_p, p);
  2.6108 +    acc_uint32e_t v0, v1;
  2.6109 +    v1 = ACC_UA_GET_BE32(b + 0);
  2.6110 +    v0 = ACC_UA_GET_BE32(b + 4);
  2.6111 +    return ACC_ICONV(acc_uint64l_t, v0) | (ACC_ICONV(acc_uint64l_t, v1) << 32);
  2.6112 +#elif (ACC_WORDSIZE >= 8)
  2.6113 +    const acc_hbyte_p b = ACC_CCAST(const acc_hbyte_p, p);
  2.6114 +    return (ACC_ICONV(acc_uint64l_t, b[7])) | (ACC_ICONV(acc_uint64l_t, b[6]) << 8) | (ACC_ICONV(acc_uint64l_t, b[5]) << 16) | (ACC_ICONV(acc_uint64l_t, b[4]) << 24) | (ACC_ICONV(acc_uint64l_t, b[3]) << 32) | (ACC_ICONV(acc_uint64l_t, b[2]) << 40) | (ACC_ICONV(acc_uint64l_t, b[1]) << 48) | (ACC_ICONV(acc_uint64l_t, b[0]) << 56);
  2.6115 +#else
  2.6116 +    const acc_hbyte_p b = ACC_CCAST(const acc_hbyte_p, p);
  2.6117 +    acc_uint32l_t v0, v1;
  2.6118 +    v1 = ACC_ICONV(acc_uint32l_t, b[3]) | (ACC_ICONV(acc_uint32l_t, b[2]) << 8) | (ACC_ICONV(acc_uint32l_t, b[1]) << 16) | (ACC_ICONV(acc_uint32l_t, b[0]) << 24);
  2.6119 +    b += 4;
  2.6120 +    v0 = ACC_ICONV(acc_uint32l_t, b[3]) | (ACC_ICONV(acc_uint32l_t, b[2]) << 8) | (ACC_ICONV(acc_uint32l_t, b[1]) << 16) | (ACC_ICONV(acc_uint32l_t, b[0]) << 24);
  2.6121 +    return ACC_ICONV(acc_uint64l_t, v0) | (ACC_ICONV(acc_uint64l_t, v1) << 32);
  2.6122 +#endif
  2.6123 +}
  2.6124 +ACCLIB_PUBLIC(void, acc_ua_set_be64) (acc_hvoid_p p, acc_uint64l_t v)
  2.6125 +{
  2.6126 +#if defined(ACC_UA_SET_BE64)
  2.6127 +    ACC_UA_SET_BE64(p, v);
  2.6128 +#elif defined(ACC_UA_SET_BE32)
  2.6129 +    acc_hbyte_p b = ACC_PCAST(acc_hbyte_p, p);
  2.6130 +    ACC_UA_SET_BE32(b + 4, v);
  2.6131 +    v >>= 32;
  2.6132 +    ACC_UA_SET_BE32(b + 0, v);
  2.6133 +#elif (ACC_WORDSIZE >= 8)
  2.6134 +    acc_hbyte_p b = ACC_PCAST(acc_hbyte_p, p);
  2.6135 +    b[7] = ACC_ITRUNC(unsigned char, v); v >>= 8;
  2.6136 +    b[6] = ACC_ITRUNC(unsigned char, v); v >>= 8;
  2.6137 +    b[5] = ACC_ITRUNC(unsigned char, v); v >>= 8;
  2.6138 +    b[4] = ACC_ITRUNC(unsigned char, v); v >>= 8;
  2.6139 +    b[3] = ACC_ITRUNC(unsigned char, v); v >>= 8;
  2.6140 +    b[2] = ACC_ITRUNC(unsigned char, v); v >>= 8;
  2.6141 +    b[1] = ACC_ITRUNC(unsigned char, v); v >>= 8;
  2.6142 +    b[0] = ACC_ITRUNC(unsigned char, v);
  2.6143 +#else
  2.6144 +    acc_hbyte_p b = ACC_PCAST(acc_hbyte_p, p);
  2.6145 +    acc_uint32l_t x;
  2.6146 +    x = ACC_ITRUNC(acc_uint32l_t, v);
  2.6147 +    b[7] = ACC_ITRUNC(unsigned char, x); x >>= 8;
  2.6148 +    b[6] = ACC_ITRUNC(unsigned char, x); x >>= 8;
  2.6149 +    b[5] = ACC_ITRUNC(unsigned char, x); x >>= 8;
  2.6150 +    b[4] = ACC_ITRUNC(unsigned char, x);
  2.6151 +    v >>= 32;
  2.6152 +    x = ACC_ITRUNC(acc_uint32l_t, v);
  2.6153 +    b[3] = ACC_ITRUNC(unsigned char, x); x >>= 8;
  2.6154 +    b[2] = ACC_ITRUNC(unsigned char, x); x >>= 8;
  2.6155 +    b[1] = ACC_ITRUNC(unsigned char, x); x >>= 8;
  2.6156 +    b[0] = ACC_ITRUNC(unsigned char, x);
  2.6157 +#endif
  2.6158 +}
  2.6159 +#endif
  2.6160 +#if defined(acc_int64l_t)
  2.6161 +ACCLIB_PUBLIC(acc_uint64l_t, acc_ua_get_le64) (const acc_hvoid_p p)
  2.6162 +{
  2.6163 +#if defined(ACC_UA_GET_LE64)
  2.6164 +    return ACC_UA_GET_LE64(p);
  2.6165 +#elif defined(ACC_UA_GET_LE32)
  2.6166 +    const acc_hbyte_p b = ACC_CCAST(const acc_hbyte_p, p);
  2.6167 +    acc_uint32e_t v0, v1;
  2.6168 +    v0 = ACC_UA_GET_LE32(b + 0);
  2.6169 +    v1 = ACC_UA_GET_LE32(b + 4);
  2.6170 +    return ACC_ICONV(acc_uint64l_t, v0) | (ACC_ICONV(acc_uint64l_t, v1) << 32);
  2.6171 +#elif (ACC_WORDSIZE >= 8)
  2.6172 +    const acc_hbyte_p b = ACC_CCAST(const acc_hbyte_p, p);
  2.6173 +    return ACC_ICONV(acc_uint64l_t, b[0]) | (ACC_ICONV(acc_uint64l_t, b[1]) << 8) | (ACC_ICONV(acc_uint64l_t, b[2]) << 16) | (ACC_ICONV(acc_uint64l_t, b[3]) << 24) | (ACC_ICONV(acc_uint64l_t, b[4]) << 32) | (ACC_ICONV(acc_uint64l_t, b[5]) << 40) | (ACC_ICONV(acc_uint64l_t, b[6]) << 48) | (ACC_ICONV(acc_uint64l_t, b[7]) << 56);
  2.6174 +#else
  2.6175 +    const acc_hbyte_p b = ACC_CCAST(const acc_hbyte_p, p);
  2.6176 +    acc_uint32l_t v0, v1;
  2.6177 +    v0 = ACC_ICONV(acc_uint32l_t, b[0]) | (ACC_ICONV(acc_uint32l_t, b[1]) << 8) | (ACC_ICONV(acc_uint32l_t, b[2]) << 16) | (ACC_ICONV(acc_uint32l_t, b[3]) << 24);
  2.6178 +    b += 4;
  2.6179 +    v1 = ACC_ICONV(acc_uint32l_t, b[0]) | (ACC_ICONV(acc_uint32l_t, b[1]) << 8) | (ACC_ICONV(acc_uint32l_t, b[2]) << 16) | (ACC_ICONV(acc_uint32l_t, b[3]) << 24);
  2.6180 +    return ACC_ICONV(acc_uint64l_t, v0) | (ACC_ICONV(acc_uint64l_t, v1) << 32);
  2.6181 +#endif
  2.6182 +}
  2.6183 +ACCLIB_PUBLIC(void, acc_ua_set_le64) (acc_hvoid_p p, acc_uint64l_t v)
  2.6184 +{
  2.6185 +#if defined(ACC_UA_SET_LE64)
  2.6186 +    ACC_UA_SET_LE64(p, v);
  2.6187 +#elif defined(ACC_UA_SET_LE32)
  2.6188 +    acc_hbyte_p b = ACC_PCAST(acc_hbyte_p, p);
  2.6189 +    ACC_UA_SET_LE32(b + 0, v);
  2.6190 +    v >>= 32;
  2.6191 +    ACC_UA_SET_LE32(b + 4, v);
  2.6192 +#elif (ACC_WORDSIZE >= 8)
  2.6193 +    acc_hbyte_p b = ACC_PCAST(acc_hbyte_p, p);
  2.6194 +    b[0] = ACC_ITRUNC(unsigned char, v); v >>= 8;
  2.6195 +    b[1] = ACC_ITRUNC(unsigned char, v); v >>= 8;
  2.6196 +    b[2] = ACC_ITRUNC(unsigned char, v); v >>= 8;
  2.6197 +    b[3] = ACC_ITRUNC(unsigned char, v); v >>= 8;
  2.6198 +    b[4] = ACC_ITRUNC(unsigned char, v); v >>= 8;
  2.6199 +    b[5] = ACC_ITRUNC(unsigned char, v); v >>= 8;
  2.6200 +    b[6] = ACC_ITRUNC(unsigned char, v); v >>= 8;
  2.6201 +    b[7] = ACC_ITRUNC(unsigned char, v);
  2.6202 +#else
  2.6203 +    acc_hbyte_p b = ACC_PCAST(acc_hbyte_p, p);
  2.6204 +    acc_uint32l_t x;
  2.6205 +    x = ACC_ITRUNC(acc_uint32l_t, v);
  2.6206 +    b[0] = ACC_ITRUNC(unsigned char, x); x >>= 8;
  2.6207 +    b[1] = ACC_ITRUNC(unsigned char, x); x >>= 8;
  2.6208 +    b[2] = ACC_ITRUNC(unsigned char, x); x >>= 8;
  2.6209 +    b[3] = ACC_ITRUNC(unsigned char, x);
  2.6210 +    v >>= 32;
  2.6211 +    x = ACC_ITRUNC(acc_uint32l_t, v);
  2.6212 +    b[4] = ACC_ITRUNC(unsigned char, x); x >>= 8;
  2.6213 +    b[5] = ACC_ITRUNC(unsigned char, x); x >>= 8;
  2.6214 +    b[6] = ACC_ITRUNC(unsigned char, x); x >>= 8;
  2.6215 +    b[7] = ACC_ITRUNC(unsigned char, x);
  2.6216 +#endif
  2.6217 +}
  2.6218 +#endif
  2.6219 +#endif
  2.6220 +#if defined(ACC_WANT_ACCLIB_VGET)
  2.6221 +#  undef ACC_WANT_ACCLIB_VGET
  2.6222 +#define __ACCLIB_VGET_CH_INCLUDED 1
  2.6223 +#if !defined(ACCLIB_PUBLIC)
  2.6224 +#  define ACCLIB_PUBLIC(r,f)                r __ACCLIB_FUNCNAME(f)
  2.6225 +#endif
  2.6226 +#if !defined(ACCLIB_PUBLIC_NOINLINE)
  2.6227 +#  if !defined(__acc_noinline)
  2.6228 +#    define ACCLIB_PUBLIC_NOINLINE(r,f)     r __ACCLIB_FUNCNAME(f)
  2.6229 +#  elif (ACC_CC_CLANG || (ACC_CC_GNUC >= 0x030400ul) || ACC_CC_LLVM)
  2.6230 +#    define ACCLIB_PUBLIC_NOINLINE(r,f)     __acc_noinline __attribute__((__used__)) r __ACCLIB_FUNCNAME(f)
  2.6231 +#  else
  2.6232 +#    define ACCLIB_PUBLIC_NOINLINE(r,f)     __acc_noinline r __ACCLIB_FUNCNAME(f)
  2.6233 +#  endif
  2.6234 +#endif
  2.6235 +extern void* volatile acc_vget_ptr__;
  2.6236 +#if (ACC_CC_CLANG || (ACC_CC_GNUC >= 0x030400ul) || ACC_CC_LLVM)
  2.6237 +void* volatile __attribute__((__used__)) acc_vget_ptr__ = ACC_STATIC_CAST(void *, 0);
  2.6238 +#else
  2.6239 +void* volatile acc_vget_ptr__ = ACC_STATIC_CAST(void *, 0);
  2.6240 +#endif
  2.6241 +#ifndef __ACCLIB_VGET_BODY
  2.6242 +#define __ACCLIB_VGET_BODY(T) \
  2.6243 +    if __acc_unlikely(acc_vget_ptr__) { \
  2.6244 +        typedef T __acc_may_alias TT; \
  2.6245 +        unsigned char e; expr &= 255; e = ACC_STATIC_CAST(unsigned char, expr); \
  2.6246 +        * ACC_STATIC_CAST(TT *, acc_vget_ptr__) = v; \
  2.6247 +        * ACC_STATIC_CAST(unsigned char *, acc_vget_ptr__) = e; \
  2.6248 +        v = * ACC_STATIC_CAST(TT *, acc_vget_ptr__); \
  2.6249 +    } \
  2.6250 +    return v;
  2.6251 +#endif
  2.6252 +ACCLIB_PUBLIC_NOINLINE(short, acc_vget_short) (short v, int expr)
  2.6253 +{
  2.6254 +    __ACCLIB_VGET_BODY(short)
  2.6255 +}
  2.6256 +ACCLIB_PUBLIC_NOINLINE(int, acc_vget_int) (int v, int expr)
  2.6257 +{
  2.6258 +    __ACCLIB_VGET_BODY(int)
  2.6259 +}
  2.6260 +ACCLIB_PUBLIC_NOINLINE(long, acc_vget_long) (long v, int expr)
  2.6261 +{
  2.6262 +    __ACCLIB_VGET_BODY(long)
  2.6263 +}
  2.6264 +#if defined(acc_int64l_t)
  2.6265 +ACCLIB_PUBLIC_NOINLINE(acc_int64l_t, acc_vget_acc_int64l_t) (acc_int64l_t v, int expr)
  2.6266 +{
  2.6267 +    __ACCLIB_VGET_BODY(acc_int64l_t)
  2.6268 +}
  2.6269 +#endif
  2.6270 +ACCLIB_PUBLIC_NOINLINE(acc_hsize_t, acc_vget_acc_hsize_t) (acc_hsize_t v, int expr)
  2.6271 +{
  2.6272 +    __ACCLIB_VGET_BODY(acc_hsize_t)
  2.6273 +}
  2.6274 +#if !(ACC_CFG_NO_DOUBLE)
  2.6275 +ACCLIB_PUBLIC_NOINLINE(double, acc_vget_double) (double v, int expr)
  2.6276 +{
  2.6277 +    __ACCLIB_VGET_BODY(double)
  2.6278 +}
  2.6279 +#endif
  2.6280 +ACCLIB_PUBLIC_NOINLINE(acc_hvoid_p, acc_vget_acc_hvoid_p) (acc_hvoid_p v, int expr)
  2.6281 +{
  2.6282 +    __ACCLIB_VGET_BODY(acc_hvoid_p)
  2.6283 +}
  2.6284 +#if (ACC_ARCH_I086 && ACC_CC_TURBOC && (__TURBOC__ == 0x0295)) && !defined(__cplusplus)
  2.6285 +ACCLIB_PUBLIC_NOINLINE(acc_hvoid_p, acc_vget_acc_hvoid_cp) (const acc_hvoid_p vv, int expr)
  2.6286 +{
  2.6287 +    acc_hvoid_p v = (acc_hvoid_p) vv;
  2.6288 +    __ACCLIB_VGET_BODY(acc_hvoid_p)
  2.6289 +}
  2.6290 +#else
  2.6291 +ACCLIB_PUBLIC_NOINLINE(const acc_hvoid_p, acc_vget_acc_hvoid_cp) (const acc_hvoid_p v, int expr)
  2.6292 +{
  2.6293 +    __ACCLIB_VGET_BODY(const acc_hvoid_p)
  2.6294 +}
  2.6295 +#endif
  2.6296 +#endif
  2.6297 +#if defined(ACC_WANT_ACCLIB_HMEMCPY)
  2.6298 +#  undef ACC_WANT_ACCLIB_HMEMCPY
  2.6299 +#define __ACCLIB_HMEMCPY_CH_INCLUDED 1
  2.6300 +#if !defined(ACCLIB_PUBLIC)
  2.6301 +#  define ACCLIB_PUBLIC(r,f)    r __ACCLIB_FUNCNAME(f)
  2.6302 +#endif
  2.6303 +ACCLIB_PUBLIC(int, acc_hmemcmp) (const acc_hvoid_p s1, const acc_hvoid_p s2, acc_hsize_t len)
  2.6304 +{
  2.6305 +#if (ACC_HAVE_MM_HUGE_PTR) || !(HAVE_MEMCMP)
  2.6306 +    const acc_hbyte_p p1 = ACC_STATIC_CAST(const acc_hbyte_p, s1);
  2.6307 +    const acc_hbyte_p p2 = ACC_STATIC_CAST(const acc_hbyte_p, s2);
  2.6308 +    if __acc_likely(len > 0) do
  2.6309 +    {
  2.6310 +        int d = *p1 - *p2;
  2.6311 +        if (d != 0)
  2.6312 +            return d;
  2.6313 +        p1++; p2++;
  2.6314 +    } while __acc_likely(--len > 0);
  2.6315 +    return 0;
  2.6316 +#else
  2.6317 +    return memcmp(s1, s2, len);
  2.6318 +#endif
  2.6319 +}
  2.6320 +ACCLIB_PUBLIC(acc_hvoid_p, acc_hmemcpy) (acc_hvoid_p dest, const acc_hvoid_p src, acc_hsize_t len)
  2.6321 +{
  2.6322 +#if (ACC_HAVE_MM_HUGE_PTR) || !(HAVE_MEMCPY)
  2.6323 +    acc_hbyte_p p1 = ACC_STATIC_CAST(acc_hbyte_p, dest);
  2.6324 +    const acc_hbyte_p p2 = ACC_STATIC_CAST(const acc_hbyte_p, src);
  2.6325 +    if (!(len > 0) || p1 == p2)
  2.6326 +        return dest;
  2.6327 +    do
  2.6328 +        *p1++ = *p2++;
  2.6329 +    while __acc_likely(--len > 0);
  2.6330 +    return dest;
  2.6331 +#else
  2.6332 +    return memcpy(dest, src, len);
  2.6333 +#endif
  2.6334 +}
  2.6335 +ACCLIB_PUBLIC(acc_hvoid_p, acc_hmemmove) (acc_hvoid_p dest, const acc_hvoid_p src, acc_hsize_t len)
  2.6336 +{
  2.6337 +#if (ACC_HAVE_MM_HUGE_PTR) || !(HAVE_MEMMOVE)
  2.6338 +    acc_hbyte_p p1 = ACC_STATIC_CAST(acc_hbyte_p, dest);
  2.6339 +    const acc_hbyte_p p2 = ACC_STATIC_CAST(const acc_hbyte_p, src);
  2.6340 +    if (!(len > 0) || p1 == p2)
  2.6341 +        return dest;
  2.6342 +    if (p1 < p2)
  2.6343 +    {
  2.6344 +        do
  2.6345 +            *p1++ = *p2++;
  2.6346 +        while __acc_likely(--len > 0);
  2.6347 +    }
  2.6348 +    else
  2.6349 +    {
  2.6350 +        p1 += len;
  2.6351 +        p2 += len;
  2.6352 +        do
  2.6353 +            *--p1 = *--p2;
  2.6354 +        while __acc_likely(--len > 0);
  2.6355 +    }
  2.6356 +    return dest;
  2.6357 +#else
  2.6358 +    return memmove(dest, src, len);
  2.6359 +#endif
  2.6360 +}
  2.6361 +ACCLIB_PUBLIC(acc_hvoid_p, acc_hmemset) (acc_hvoid_p s, int cc, acc_hsize_t len)
  2.6362 +{
  2.6363 +#if (ACC_HAVE_MM_HUGE_PTR) || !(HAVE_MEMSET)
  2.6364 +    acc_hbyte_p p = ACC_STATIC_CAST(acc_hbyte_p, s);
  2.6365 +    unsigned char c = ACC_ITRUNC(unsigned char, cc);
  2.6366 +    if __acc_likely(len > 0) do
  2.6367 +        *p++ = c;
  2.6368 +    while __acc_likely(--len > 0);
  2.6369 +    return s;
  2.6370 +#else
  2.6371 +    return memset(s, cc, len);
  2.6372 +#endif
  2.6373 +}
  2.6374 +#endif
  2.6375 +#if defined(ACC_WANT_ACCLIB_RAND)
  2.6376 +#  undef ACC_WANT_ACCLIB_RAND
  2.6377 +#define __ACCLIB_RAND_CH_INCLUDED 1
  2.6378 +#if !defined(ACCLIB_PUBLIC)
  2.6379 +#  define ACCLIB_PUBLIC(r,f)    r __ACCLIB_FUNCNAME(f)
  2.6380 +#endif
  2.6381 +ACCLIB_PUBLIC(void, acc_srand31) (acc_rand31_p r, acc_uint32l_t seed)
  2.6382 +{
  2.6383 +    r->seed = seed & ACC_UINT32_C(0xffffffff);
  2.6384 +}
  2.6385 +ACCLIB_PUBLIC(acc_uint32l_t, acc_rand31) (acc_rand31_p r)
  2.6386 +{
  2.6387 +    r->seed = r->seed * ACC_UINT32_C(1103515245) + 12345;
  2.6388 +    r->seed &= ACC_UINT32_C(0x7fffffff);
  2.6389 +    return r->seed;
  2.6390 +}
  2.6391 +#if defined(acc_int64l_t)
  2.6392 +ACCLIB_PUBLIC(void, acc_srand48) (acc_rand48_p r, acc_uint32l_t seed)
  2.6393 +{
  2.6394 +    r->seed = seed & ACC_UINT32_C(0xffffffff);
  2.6395 +    r->seed <<= 16; r->seed |= 0x330e;
  2.6396 +}
  2.6397 +ACCLIB_PUBLIC(acc_uint32l_t, acc_rand48) (acc_rand48_p r)
  2.6398 +{
  2.6399 +    acc_uint64l_t a;
  2.6400 +    r->seed = r->seed * ACC_UINT64_C(25214903917) + 11;
  2.6401 +    r->seed &= ACC_UINT64_C(0xffffffffffff);
  2.6402 +    a = r->seed >> 17;
  2.6403 +    return ACC_STATIC_CAST(acc_uint32l_t, a);
  2.6404 +}
  2.6405 +ACCLIB_PUBLIC(acc_uint32l_t, acc_rand48_r32) (acc_rand48_p r)
  2.6406 +{
  2.6407 +    acc_uint64l_t a;
  2.6408 +    r->seed = r->seed * ACC_UINT64_C(25214903917) + 11;
  2.6409 +    r->seed &= ACC_UINT64_C(0xffffffffffff);
  2.6410 +    a = r->seed >> 16;
  2.6411 +    return ACC_STATIC_CAST(acc_uint32l_t, a);
  2.6412 +}
  2.6413 +#endif
  2.6414 +#if defined(acc_int64l_t)
  2.6415 +ACCLIB_PUBLIC(void, acc_srand64) (acc_rand64_p r, acc_uint64l_t seed)
  2.6416 +{
  2.6417 +    r->seed = seed & ACC_UINT64_C(0xffffffffffffffff);
  2.6418 +}
  2.6419 +ACCLIB_PUBLIC(acc_uint32l_t, acc_rand64) (acc_rand64_p r)
  2.6420 +{
  2.6421 +    acc_uint64l_t a;
  2.6422 +    r->seed = r->seed * ACC_UINT64_C(6364136223846793005) + 1;
  2.6423 +#if (ACC_SIZEOF_ACC_INT64L_T > 8)
  2.6424 +    r->seed &= ACC_UINT64_C(0xffffffffffffffff);
  2.6425 +#endif
  2.6426 +    a = r->seed >> 33;
  2.6427 +    return ACC_STATIC_CAST(acc_uint32l_t, a);
  2.6428 +}
  2.6429 +ACCLIB_PUBLIC(acc_uint32l_t, acc_rand64_r32) (acc_rand64_p r)
  2.6430 +{
  2.6431 +    acc_uint64l_t a;
  2.6432 +    r->seed = r->seed * ACC_UINT64_C(6364136223846793005) + 1;
  2.6433 +#if (ACC_SIZEOF_ACC_INT64L_T > 8)
  2.6434 +    r->seed &= ACC_UINT64_C(0xffffffffffffffff);
  2.6435 +#endif
  2.6436 +    a = r->seed >> 32;
  2.6437 +    return ACC_STATIC_CAST(acc_uint32l_t, a);
  2.6438 +}
  2.6439 +#endif
  2.6440 +ACCLIB_PUBLIC(void, acc_srandmt) (acc_randmt_p r, acc_uint32l_t seed)
  2.6441 +{
  2.6442 +    unsigned i = 0;
  2.6443 +    do {
  2.6444 +        r->s[i++] = (seed &= ACC_UINT32_C(0xffffffff));
  2.6445 +        seed ^= seed >> 30;
  2.6446 +        seed = seed * ACC_UINT32_C(0x6c078965) + i;
  2.6447 +    } while (i != 624);
  2.6448 +    r->n = i;
  2.6449 +}
  2.6450 +ACCLIB_PUBLIC(acc_uint32l_t, acc_randmt) (acc_randmt_p r)
  2.6451 +{
  2.6452 +    return (__ACCLIB_FUNCNAME(acc_randmt_r32)(r)) >> 1;
  2.6453 +}
  2.6454 +ACCLIB_PUBLIC(acc_uint32l_t, acc_randmt_r32) (acc_randmt_p r)
  2.6455 +{
  2.6456 +    acc_uint32l_t v;
  2.6457 +    if __acc_unlikely(r->n == 624) {
  2.6458 +        unsigned i = 0, j;
  2.6459 +        r->n = 0;
  2.6460 +        do {
  2.6461 +            j = i - 623; if (ACC_STATIC_CAST(int, j) < 0) j += 624;
  2.6462 +            v = (r->s[i] & ACC_UINT32_C(0x80000000)) ^ (r->s[j] & ACC_UINT32_C(0x7fffffff));
  2.6463 +            j = i - 227; if (ACC_STATIC_CAST(int, j) < 0) j += 624;
  2.6464 +            r->s[i] = r->s[j] ^ (v >> 1);
  2.6465 +            if (v & 1) r->s[i] ^= ACC_UINT32_C(0x9908b0df);
  2.6466 +        } while (++i != 624);
  2.6467 +    }
  2.6468 +    { unsigned i = r->n++; v = r->s[i]; }
  2.6469 +    v ^= v >> 11; v ^= (v & ACC_UINT32_C(0x013a58ad)) << 7;
  2.6470 +    v ^= (v & ACC_UINT32_C(0x0001df8c)) << 15; v ^= v >> 18;
  2.6471 +    return v;
  2.6472 +}
  2.6473 +#if defined(acc_int64l_t)
  2.6474 +ACCLIB_PUBLIC(void, acc_srandmt64) (acc_randmt64_p r, acc_uint64l_t seed)
  2.6475 +{
  2.6476 +    unsigned i = 0;
  2.6477 +    do {
  2.6478 +        r->s[i++] = (seed &= ACC_UINT64_C(0xffffffffffffffff));
  2.6479 +        seed ^= seed >> 62;
  2.6480 +        seed = seed * ACC_UINT64_C(0x5851f42d4c957f2d) + i;
  2.6481 +    } while (i != 312);
  2.6482 +    r->n = i;
  2.6483 +}
  2.6484 +#if 0
  2.6485 +ACCLIB_PUBLIC(acc_uint32l_t, acc_randmt64) (acc_randmt64_p r)
  2.6486 +{
  2.6487 +    acc_uint64l_t v;
  2.6488 +    v = (__ACCLIB_FUNCNAME(acc_randmt64_r64)(r)) >> 33;
  2.6489 +    return ACC_STATIC_CAST(acc_uint32l_t, v);
  2.6490 +}
  2.6491 +#endif
  2.6492 +ACCLIB_PUBLIC(acc_uint64l_t, acc_randmt64_r64) (acc_randmt64_p r)
  2.6493 +{
  2.6494 +    acc_uint64l_t v;
  2.6495 +    if __acc_unlikely(r->n == 312) {
  2.6496 +        unsigned i = 0, j;
  2.6497 +        r->n = 0;
  2.6498 +        do {
  2.6499 +            j = i - 311; if (ACC_STATIC_CAST(int, j) < 0) j += 312;
  2.6500 +            v = (r->s[i] & ACC_UINT64_C(0xffffffff80000000)) ^ (r->s[j] & ACC_UINT64_C(0x7fffffff));
  2.6501 +            j = i - 156; if (ACC_STATIC_CAST(int, j) < 0) j += 312;
  2.6502 +            r->s[i] = r->s[j] ^ (v >> 1);
  2.6503 +            if (v & 1) r->s[i] ^= ACC_UINT64_C(0xb5026f5aa96619e9);
  2.6504 +        } while (++i != 312);
  2.6505 +    }
  2.6506 +    { unsigned i = r->n++; v = r->s[i]; }
  2.6507 +    v ^= (v & ACC_UINT64_C(0xaaaaaaaaa0000000)) >> 29;
  2.6508 +    v ^= (v & ACC_UINT64_C(0x38eb3ffff6d3)) << 17;
  2.6509 +    v ^= (v & ACC_UINT64_C(0x7ffbf77)) << 37;
  2.6510 +    return v ^ (v >> 43);
  2.6511 +}
  2.6512 +#endif
  2.6513 +#endif
  2.6514 +#if defined(ACC_WANT_ACCLIB_RDTSC)
  2.6515 +#  undef ACC_WANT_ACCLIB_RDTSC
  2.6516 +#define __ACCLIB_RDTSC_CH_INCLUDED 1
  2.6517 +#if !defined(ACCLIB_PUBLIC)
  2.6518 +#  define ACCLIB_PUBLIC(r,f)    r __ACCLIB_FUNCNAME(f)
  2.6519 +#endif
  2.6520 +#if defined(acc_int32e_t)
  2.6521 +#if (ACC_OS_WIN32 && ACC_CC_PELLESC && (__POCC__ >= 290))
  2.6522 +#  pragma warn(push)
  2.6523 +#  pragma warn(disable:2007)
  2.6524 +#endif
  2.6525 +#if (ACC_ARCH_AMD64 || ACC_ARCH_I386) && (ACC_ASM_SYNTAX_GNUC)
  2.6526 +#if (ACC_ARCH_AMD64 && ACC_CC_INTELC)
  2.6527 +#  define __ACCLIB_RDTSC_REGS   : : "c" (t) : "memory", "rax", "rdx"
  2.6528 +#elif (ACC_ARCH_AMD64)
  2.6529 +#  define __ACCLIB_RDTSC_REGS   : : "c" (t) : "cc", "memory", "rax", "rdx"
  2.6530 +#elif (ACC_ARCH_I386 && ACC_CC_GNUC && (ACC_CC_GNUC < 0x020000ul))
  2.6531 +#  define __ACCLIB_RDTSC_REGS   : : "c" (t) : "ax", "dx"
  2.6532 +#elif (ACC_ARCH_I386 && ACC_CC_INTELC)
  2.6533 +#  define __ACCLIB_RDTSC_REGS   : : "c" (t) : "memory", "eax", "edx"
  2.6534 +#else
  2.6535 +#  define __ACCLIB_RDTSC_REGS   : : "c" (t) : "cc", "memory", "eax", "edx"
  2.6536 +#endif
  2.6537 +#endif
  2.6538 +ACCLIB_PUBLIC(int, acc_tsc_read) (acc_uint32e_t* t)
  2.6539 +{
  2.6540 +#if (ACC_ARCH_AMD64 || ACC_ARCH_I386) && (ACC_ASM_SYNTAX_GNUC)
  2.6541 +    __asm__ __volatile__(
  2.6542 +        "clc \n" ".byte 0x0f,0x31\n"
  2.6543 +        "movl %%eax,(%0)\n" "movl %%edx,4(%0)\n"
  2.6544 +        __ACCLIB_RDTSC_REGS
  2.6545 +    );
  2.6546 +    return 0;
  2.6547 +#elif (ACC_ARCH_I386) && (ACC_ASM_SYNTAX_MSC)
  2.6548 +    ACC_UNUSED(t);
  2.6549 +    __asm {
  2.6550 +        mov ecx, t
  2.6551 +        clc
  2.6552 +#  if (ACC_CC_MSC && (_MSC_VER < 1200))
  2.6553 +        _emit 0x0f
  2.6554 +        _emit 0x31
  2.6555 +#  else
  2.6556 +        rdtsc
  2.6557 +#  endif
  2.6558 +        mov [ecx], eax
  2.6559 +        mov [ecx+4], edx
  2.6560 +    }
  2.6561 +    return 0;
  2.6562 +#else
  2.6563 +    t[0] = t[1] = 0; return -1;
  2.6564 +#endif
  2.6565 +}
  2.6566 +#if (ACC_OS_WIN32 && ACC_CC_PELLESC && (__POCC__ >= 290))
  2.6567 +#  pragma warn(pop)
  2.6568 +#endif
  2.6569 +#endif
  2.6570 +#endif
  2.6571 +#if defined(ACC_WANT_ACCLIB_DOSALLOC)
  2.6572 +#  undef ACC_WANT_ACCLIB_DOSALLOC
  2.6573 +#define __ACCLIB_DOSALLOC_CH_INCLUDED 1
  2.6574 +#if !defined(ACCLIB_PUBLIC)
  2.6575 +#  define ACCLIB_PUBLIC(r,f)    r __ACCLIB_FUNCNAME(f)
  2.6576 +#endif
  2.6577 +#if (ACC_OS_OS216)
  2.6578 +ACC_EXTERN_C unsigned short __far __pascal DosAllocHuge(unsigned short, unsigned short, unsigned short __far *, unsigned short, unsigned short);
  2.6579 +ACC_EXTERN_C unsigned short __far __pascal DosFreeSeg(unsigned short);
  2.6580 +#endif
  2.6581 +#if (ACC_OS_DOS16 || ACC_OS_WIN16)
  2.6582 +#if !(ACC_CC_AZTECC)
  2.6583 +ACCLIB_PUBLIC(void __far*, acc_dos_alloc) (unsigned long size)
  2.6584 +{
  2.6585 +    void __far* p = 0;
  2.6586 +    union REGS ri, ro;
  2.6587 +    if ((long)size <= 0)
  2.6588 +        return p;
  2.6589 +    size = (size + 15) >> 4;
  2.6590 +    if (size > 0xffffu)
  2.6591 +        return p;
  2.6592 +    ri.x.ax = 0x4800;
  2.6593 +    ri.x.bx = (unsigned short) size;
  2.6594 +    int86(0x21, &ri, &ro);
  2.6595 +    if ((ro.x.cflag & 1) == 0)
  2.6596 +        p = (void __far*) ACC_PTR_MK_FP(ro.x.ax, 0);
  2.6597 +    return p;
  2.6598 +}
  2.6599 +ACCLIB_PUBLIC(int, acc_dos_free) (void __far* p)
  2.6600 +{
  2.6601 +    union REGS ri, ro;
  2.6602 +    struct SREGS rs;
  2.6603 +    if (!p)
  2.6604 +        return 0;
  2.6605 +    if (ACC_PTR_FP_OFF(p) != 0)
  2.6606 +        return -1;
  2.6607 +    segread(&rs);
  2.6608 +    ri.x.ax = 0x4900;
  2.6609 +    rs.es = ACC_PTR_FP_SEG(p);
  2.6610 +    int86x(0x21, &ri, &ro, &rs);
  2.6611 +    if (ro.x.cflag & 1)
  2.6612 +        return -1;
  2.6613 +    return 0;
  2.6614 +}
  2.6615 +#endif
  2.6616 +#endif
  2.6617 +#if (ACC_OS_OS216)
  2.6618 +ACCLIB_PUBLIC(void __far*, acc_dos_alloc) (unsigned long size)
  2.6619 +{
  2.6620 +    void __far* p = 0;
  2.6621 +    unsigned short sel = 0;
  2.6622 +    if ((long)size <= 0)
  2.6623 +        return p;
  2.6624 +    if (DosAllocHuge((unsigned short)(size >> 16), (unsigned short)size, &sel, 0, 0) == 0)
  2.6625 +        p = (void __far*) ACC_PTR_MK_FP(sel, 0);
  2.6626 +    return p;
  2.6627 +}
  2.6628 +ACCLIB_PUBLIC(int, acc_dos_free) (void __far* p)
  2.6629 +{
  2.6630 +    if (!p)
  2.6631 +        return 0;
  2.6632 +    if (ACC_PTR_FP_OFF(p) != 0)
  2.6633 +        return -1;
  2.6634 +    if (DosFreeSeg(ACC_PTR_FP_SEG(p)) != 0)
  2.6635 +        return -1;
  2.6636 +    return 0;
  2.6637 +}
  2.6638 +#endif
  2.6639 +#endif
  2.6640 +#if defined(ACC_WANT_ACCLIB_GETOPT)
  2.6641 +#  undef ACC_WANT_ACCLIB_GETOPT
  2.6642 +#define __ACCLIB_GETOPT_CH_INCLUDED 1
  2.6643 +#if !defined(ACCLIB_PUBLIC)
  2.6644 +#  define ACCLIB_PUBLIC(r,f)    r __ACCLIB_FUNCNAME(f)
  2.6645 +#endif
  2.6646 +ACCLIB_PUBLIC(void, acc_getopt_init) (acc_getopt_p g,
  2.6647 +                                      int start_argc, int argc, char** argv)
  2.6648 +{
  2.6649 +    memset(g, 0, sizeof(*g));
  2.6650 +    g->optind = start_argc;
  2.6651 +    g->argc = argc; g->argv = argv;
  2.6652 +    g->optopt = -1;
  2.6653 +}
  2.6654 +static int __ACCLIB_FUNCNAME(acc_getopt_rotate) (char** p, int first, int middle, int last)
  2.6655 +{
  2.6656 +    int i = middle, n = middle - first;
  2.6657 +    if (first >= middle || middle >= last) return 0;
  2.6658 +    for (;;)
  2.6659 +    {
  2.6660 +        char* t = p[first]; p[first] = p[i]; p[i] = t;
  2.6661 +        if (++first == middle)
  2.6662 +        {
  2.6663 +            if (++i == last) break;
  2.6664 +            middle = i;
  2.6665 +        }
  2.6666 +        else if (++i == last)
  2.6667 +            i = middle;
  2.6668 +    }
  2.6669 +    return n;
  2.6670 +}
  2.6671 +static int __ACCLIB_FUNCNAME(acc_getopt_perror) (acc_getopt_p g, int ret, const char* f, ...)
  2.6672 +{
  2.6673 +    if (g->opterr)
  2.6674 +    {
  2.6675 +#if (HAVE_STDARG_H)
  2.6676 +        struct { va_list ap; } s;
  2.6677 +        va_start(s.ap, f);
  2.6678 +        g->opterr(g, f, &s);
  2.6679 +        va_end(s.ap);
  2.6680 +#else
  2.6681 +        g->opterr(g, f, NULL);
  2.6682 +#endif
  2.6683 +    }
  2.6684 +    ++g->errcount;
  2.6685 +    return ret;
  2.6686 +}
  2.6687 +ACCLIB_PUBLIC(int, acc_getopt) (acc_getopt_p g,
  2.6688 +                                const char* shortopts,
  2.6689 +                                const acc_getopt_longopt_p longopts,
  2.6690 +                                int* longind)
  2.6691 +{
  2.6692 +#define pe  __ACCLIB_FUNCNAME(acc_getopt_perror)
  2.6693 +    int ordering = ACC_GETOPT_PERMUTE;
  2.6694 +    int missing_arg_ret = g->bad_option;
  2.6695 +    char* a;
  2.6696 +    if (shortopts)
  2.6697 +    {
  2.6698 +        if (*shortopts == '-' || *shortopts == '+')
  2.6699 +            ordering = *shortopts++ == '-' ? ACC_GETOPT_RETURN_IN_ORDER : ACC_GETOPT_REQUIRE_ORDER;
  2.6700 +        if (*shortopts == ':')
  2.6701 +            missing_arg_ret = *shortopts++;
  2.6702 +    }
  2.6703 +    g->optarg = NULL;
  2.6704 +    if (g->optopt == -1)
  2.6705 +        g->optopt = g->bad_option;
  2.6706 +    if (longind)
  2.6707 +        *longind = -1;
  2.6708 +    if (g->eof)
  2.6709 +        return -1;
  2.6710 +    if (g->shortpos)
  2.6711 +        goto acc_label_next_shortopt;
  2.6712 +    g->optind -= __ACCLIB_FUNCNAME(acc_getopt_rotate)(g->argv, g->pending_rotate_first, g->pending_rotate_middle, g->optind);
  2.6713 +    g->pending_rotate_first = g->pending_rotate_middle = g->optind;
  2.6714 +    if (ordering == ACC_GETOPT_PERMUTE)
  2.6715 +    {
  2.6716 +        while (g->optind < g->argc && !(g->argv[g->optind][0] == '-' && g->argv[g->optind][1]))
  2.6717 +            ++g->optind;
  2.6718 +        g->pending_rotate_middle = g->optind;
  2.6719 +    }
  2.6720 +    if (g->optind >= g->argc)
  2.6721 +    {
  2.6722 +        g->optind = g->pending_rotate_first;
  2.6723 +        goto acc_label_eof;
  2.6724 +    }
  2.6725 +    a = g->argv[g->optind];
  2.6726 +    if (a[0] == '-' && a[1] == '-')
  2.6727 +    {
  2.6728 +        size_t l = 0;
  2.6729 +        const acc_getopt_longopt_p o;
  2.6730 +        const acc_getopt_longopt_p o1 = NULL;
  2.6731 +        const acc_getopt_longopt_p o2 = NULL;
  2.6732 +        int need_exact = 0;
  2.6733 +        ++g->optind;
  2.6734 +        if (!a[2])
  2.6735 +            goto acc_label_eof;
  2.6736 +        for (a += 2; a[l] && a[l] != '=' && a[l] != '#'; )
  2.6737 +            ++l;
  2.6738 +        for (o = longopts; l && o && o->name; ++o)
  2.6739 +        {
  2.6740 +            if (strncmp(a, o->name, l) != 0)
  2.6741 +                continue;
  2.6742 +            if (!o->name[l])
  2.6743 +                goto acc_label_found_o;
  2.6744 +            need_exact |= o->has_arg & ACC_GETOPT_EXACT_ARG;
  2.6745 +            if (o1) o2 = o;
  2.6746 +            else    o1 = o;
  2.6747 +        }
  2.6748 +        if (!o1 || need_exact)
  2.6749 +            return pe(g, g->bad_option, "unrecognized option '--%s'", a);
  2.6750 +        if (o2)
  2.6751 +            return pe(g, g->bad_option, "option '--%s' is ambiguous (could be '--%s' or '--%s')", a, o1->name, o2->name);
  2.6752 +        o = o1;
  2.6753 +    acc_label_found_o:
  2.6754 +        a += l;
  2.6755 +        switch (o->has_arg & 0x2f)
  2.6756 +        {
  2.6757 +        case ACC_GETOPT_OPTIONAL_ARG:
  2.6758 +            if (a[0])
  2.6759 +                g->optarg = a + 1;
  2.6760 +            break;
  2.6761 +        case ACC_GETOPT_REQUIRED_ARG:
  2.6762 +            if (a[0])
  2.6763 +                g->optarg = a + 1;
  2.6764 +            else if (g->optind < g->argc)
  2.6765 +                g->optarg = g->argv[g->optind++];
  2.6766 +            if (!g->optarg)
  2.6767 +                return pe(g, missing_arg_ret, "option '--%s' requires an argument", o->name);
  2.6768 +            break;
  2.6769 +        case ACC_GETOPT_REQUIRED_ARG | 0x20:
  2.6770 +            if (a[0] && a[1])
  2.6771 +                g->optarg = a + 1;
  2.6772 +            if (!g->optarg)
  2.6773 +                return pe(g, missing_arg_ret, "option '--%s=' requires an argument", o->name);
  2.6774 +            break;
  2.6775 +        default:
  2.6776 +            if (a[0])
  2.6777 +                return pe(g, g->bad_option, "option '--%s' doesn't allow an argument", o->name);
  2.6778 +            break;
  2.6779 +        }
  2.6780 +        if (longind)
  2.6781 +            *longind = (int) (o - longopts);
  2.6782 +        if (o->flag)
  2.6783 +        {
  2.6784 +            *o->flag = o->val;
  2.6785 +            return 0;
  2.6786 +        }
  2.6787 +        return o->val;
  2.6788 +    }
  2.6789 +    if (a[0] == '-' && a[1])
  2.6790 +    {
  2.6791 +        unsigned char c;
  2.6792 +        const char* s;
  2.6793 +    acc_label_next_shortopt:
  2.6794 +        a = g->argv[g->optind] + ++g->shortpos;
  2.6795 +        c = (unsigned char) *a++; s = NULL;
  2.6796 +        if (c != ':' && shortopts)
  2.6797 +            s = strchr(shortopts, c);
  2.6798 +        if (!s || s[1] != ':')
  2.6799 +        {
  2.6800 +            if (!a[0])
  2.6801 +                { ++g->optind; g->shortpos = 0; }
  2.6802 +            if (!s)
  2.6803 +            {
  2.6804 +                g->optopt = c;
  2.6805 +                return pe(g, g->bad_option, "invalid option '-%c'", c);
  2.6806 +            }
  2.6807 +        }
  2.6808 +        else
  2.6809 +        {
  2.6810 +            ++g->optind; g->shortpos = 0;
  2.6811 +            if (a[0])
  2.6812 +                g->optarg = a;
  2.6813 +            else if (s[2] != ':')
  2.6814 +            {
  2.6815 +                if (g->optind < g->argc)
  2.6816 +                    g->optarg = g->argv[g->optind++];
  2.6817 +                else
  2.6818 +                {
  2.6819 +                    g->optopt = c;
  2.6820 +                    return pe(g, missing_arg_ret, "option '-%c' requires an argument", c);
  2.6821 +                }
  2.6822 +            }
  2.6823 +        }
  2.6824 +        return c;
  2.6825 +    }
  2.6826 +    if (ordering == ACC_GETOPT_RETURN_IN_ORDER)
  2.6827 +    {
  2.6828 +        ++g->optind;
  2.6829 +        g->optarg = a;
  2.6830 +        return 1;
  2.6831 +    }
  2.6832 +acc_label_eof:
  2.6833 +    g->optind -= __ACCLIB_FUNCNAME(acc_getopt_rotate)(g->argv, g->pending_rotate_first, g->pending_rotate_middle, g->optind);
  2.6834 +    g->pending_rotate_first = g->pending_rotate_middle = g->optind;
  2.6835 +    g->eof = 1;
  2.6836 +    return -1;
  2.6837 +#undef pe
  2.6838 +}
  2.6839 +#endif
  2.6840 +#if defined(ACC_WANT_ACCLIB_HALLOC)
  2.6841 +#  undef ACC_WANT_ACCLIB_HALLOC
  2.6842 +#define __ACCLIB_HALLOC_CH_INCLUDED 1
  2.6843 +#if !defined(ACCLIB_PUBLIC)
  2.6844 +#  define ACCLIB_PUBLIC(r,f)    r __ACCLIB_FUNCNAME(f)
  2.6845 +#endif
  2.6846 +#if (ACC_HAVE_MM_HUGE_PTR)
  2.6847 +#if 1 && (ACC_OS_DOS16 && defined(BLX286))
  2.6848 +#  define __ACCLIB_HALLOC_USE_DAH 1
  2.6849 +#elif 1 && (ACC_OS_DOS16 && defined(DOSX286))
  2.6850 +#  define __ACCLIB_HALLOC_USE_DAH 1
  2.6851 +#elif 1 && (ACC_OS_OS216)
  2.6852 +#  define __ACCLIB_HALLOC_USE_DAH 1
  2.6853 +#elif 1 && (ACC_OS_WIN16)
  2.6854 +#  define __ACCLIB_HALLOC_USE_GA 1
  2.6855 +#elif 1 && (ACC_OS_DOS16) && (ACC_CC_BORLANDC) && defined(__DPMI16__)
  2.6856 +#  define __ACCLIB_HALLOC_USE_GA 1
  2.6857 +#endif
  2.6858 +#endif
  2.6859 +#if (__ACCLIB_HALLOC_USE_DAH)
  2.6860 +#if 0 && (ACC_OS_OS216)
  2.6861 +#include <os2.h>
  2.6862 +#else
  2.6863 +ACC_EXTERN_C unsigned short __far __pascal DosAllocHuge(unsigned short, unsigned short, unsigned short __far *, unsigned short, unsigned short);
  2.6864 +ACC_EXTERN_C unsigned short __far __pascal DosFreeSeg(unsigned short);
  2.6865 +#endif
  2.6866 +#endif
  2.6867 +#if (__ACCLIB_HALLOC_USE_GA)
  2.6868 +#if 0
  2.6869 +#define STRICT 1
  2.6870 +#include <windows.h>
  2.6871 +#else
  2.6872 +ACC_EXTERN_C const void __near* __far __pascal GlobalAlloc(unsigned, unsigned long);
  2.6873 +ACC_EXTERN_C const void __near* __far __pascal GlobalFree(const void __near*);
  2.6874 +ACC_EXTERN_C unsigned long __far __pascal GlobalHandle(unsigned);
  2.6875 +ACC_EXTERN_C void __far* __far __pascal GlobalLock(const void __near*);
  2.6876 +ACC_EXTERN_C int __far __pascal GlobalUnlock(const void __near*);
  2.6877 +#endif
  2.6878 +#endif
  2.6879 +ACCLIB_PUBLIC(acc_hvoid_p, acc_halloc) (acc_hsize_t size)
  2.6880 +{
  2.6881 +    acc_hvoid_p p = ACC_STATIC_CAST(acc_hvoid_p, 0);
  2.6882 +    if (!(size > 0))
  2.6883 +        return p;
  2.6884 +#if 0 && defined(__palmos__)
  2.6885 +    p = MemPtrNew(size);
  2.6886 +#elif !(ACC_HAVE_MM_HUGE_PTR)
  2.6887 +    if (size < ACC_STATIC_CAST(size_t, -1))
  2.6888 +        p = malloc(ACC_STATIC_CAST(size_t, size));
  2.6889 +#else
  2.6890 +    if (ACC_STATIC_CAST(long, size) <= 0)
  2.6891 +        return p;
  2.6892 +{
  2.6893 +#if (__ACCLIB_HALLOC_USE_DAH)
  2.6894 +    unsigned short sel = 0;
  2.6895 +    if (DosAllocHuge((unsigned short)(size >> 16), (unsigned short)size, &sel, 0, 0) == 0)
  2.6896 +        p = (acc_hvoid_p) ACC_PTR_MK_FP(sel, 0);
  2.6897 +#elif (__ACCLIB_HALLOC_USE_GA)
  2.6898 +    const void __near* h = GlobalAlloc(2, size);
  2.6899 +    if (h) {
  2.6900 +        p = GlobalLock(h);
  2.6901 +        if (p && ACC_PTR_FP_OFF(p) != 0) {
  2.6902 +            GlobalUnlock(h);
  2.6903 +            p = 0;
  2.6904 +        }
  2.6905 +        if (!p)
  2.6906 +            GlobalFree(h);
  2.6907 +    }
  2.6908 +#elif (ACC_CC_MSC && (_MSC_VER >= 700))
  2.6909 +    p = _halloc(size, 1);
  2.6910 +#elif (ACC_CC_MSC || ACC_CC_WATCOMC)
  2.6911 +    p = halloc(size, 1);
  2.6912 +#elif (ACC_CC_DMC || ACC_CC_SYMANTECC || ACC_CC_ZORTECHC)
  2.6913 +    p = farmalloc(size);
  2.6914 +#elif (ACC_CC_BORLANDC || ACC_CC_TURBOC)
  2.6915 +    p = farmalloc(size);
  2.6916 +#elif (ACC_CC_AZTECC)
  2.6917 +    p = lmalloc(size);
  2.6918 +#else
  2.6919 +    if (size < ACC_STATIC_CAST(size_t, -1))
  2.6920 +        p = malloc(ACC_STATIC_CAST(size_t, size));
  2.6921 +#endif
  2.6922 +}
  2.6923 +#endif
  2.6924 +    return p;
  2.6925 +}
  2.6926 +ACCLIB_PUBLIC(void, acc_hfree) (acc_hvoid_p p)
  2.6927 +{
  2.6928 +    if (!p)
  2.6929 +        return;
  2.6930 +#if 0 && defined(__palmos__)
  2.6931 +    MemPtrFree(p);
  2.6932 +#elif !(ACC_HAVE_MM_HUGE_PTR)
  2.6933 +    free(p);
  2.6934 +#else
  2.6935 +#if (__ACCLIB_HALLOC_USE_DAH)
  2.6936 +    if (ACC_PTR_FP_OFF(p) == 0)
  2.6937 +        DosFreeSeg((unsigned short) ACC_PTR_FP_SEG(p));
  2.6938 +#elif (__ACCLIB_HALLOC_USE_GA)
  2.6939 +    if (ACC_PTR_FP_OFF(p) == 0) {
  2.6940 +        const void __near* h = (const void __near*) (unsigned) GlobalHandle(ACC_PTR_FP_SEG(p));
  2.6941 +        if (h) {
  2.6942 +            GlobalUnlock(h);
  2.6943 +            GlobalFree(h);
  2.6944 +        }
  2.6945 +    }
  2.6946 +#elif (ACC_CC_MSC && (_MSC_VER >= 700))
  2.6947 +    _hfree(p);
  2.6948 +#elif (ACC_CC_MSC || ACC_CC_WATCOMC)
  2.6949 +    hfree(p);
  2.6950 +#elif (ACC_CC_DMC || ACC_CC_SYMANTECC || ACC_CC_ZORTECHC)
  2.6951 +    farfree((void __far*) p);
  2.6952 +#elif (ACC_CC_BORLANDC || ACC_CC_TURBOC)
  2.6953 +    farfree((void __far*) p);
  2.6954 +#elif (ACC_CC_AZTECC)
  2.6955 +    lfree(p);
  2.6956 +#else
  2.6957 +    free(p);
  2.6958 +#endif
  2.6959 +#endif
  2.6960 +}
  2.6961 +#endif
  2.6962 +#if defined(ACC_WANT_ACCLIB_HFREAD)
  2.6963 +#  undef ACC_WANT_ACCLIB_HFREAD
  2.6964 +#define __ACCLIB_HFREAD_CH_INCLUDED 1
  2.6965 +#if !defined(ACCLIB_PUBLIC)
  2.6966 +#  define ACCLIB_PUBLIC(r,f)    r __ACCLIB_FUNCNAME(f)
  2.6967 +#endif
  2.6968 +ACCLIB_PUBLIC(acc_hsize_t, acc_hfread) (void* vfp, acc_hvoid_p buf, acc_hsize_t size)
  2.6969 +{
  2.6970 +    FILE* fp = ACC_STATIC_CAST(FILE *, vfp);
  2.6971 +#if (ACC_HAVE_MM_HUGE_PTR)
  2.6972 +#if (ACC_MM_TINY || ACC_MM_SMALL || ACC_MM_MEDIUM)
  2.6973 +#define __ACCLIB_REQUIRE_HMEMCPY_CH 1
  2.6974 +    unsigned char tmp[512];
  2.6975 +    acc_hsize_t l = 0;
  2.6976 +    while (l < size)
  2.6977 +    {
  2.6978 +        size_t n = size - l > sizeof(tmp) ? sizeof(tmp) : (size_t) (size - l);
  2.6979 +        n = fread(tmp, 1, n, fp);
  2.6980 +        if (n == 0)
  2.6981 +            break;
  2.6982 +        __ACCLIB_FUNCNAME(acc_hmemcpy)((acc_hbyte_p)buf + l, tmp, (acc_hsize_t)n);
  2.6983 +        l += n;
  2.6984 +    }
  2.6985 +    return l;
  2.6986 +#elif (ACC_MM_COMPACT || ACC_MM_LARGE || ACC_MM_HUGE)
  2.6987 +    acc_hbyte_p b = (acc_hbyte_p) buf;
  2.6988 +    acc_hsize_t l = 0;
  2.6989 +    while (l < size)
  2.6990 +    {
  2.6991 +        size_t n;
  2.6992 +        n = ACC_PTR_FP_OFF(b); n = (n <= 1) ? 0x8000u : (0u - n);
  2.6993 +        if ((acc_hsize_t) n > size - l)
  2.6994 +            n = (size_t) (size - l);
  2.6995 +        n = fread((void __far*)b, 1, n, fp);
  2.6996 +        if (n == 0)
  2.6997 +            break;
  2.6998 +        b += n; l += n;
  2.6999 +    }
  2.7000 +    return l;
  2.7001 +#else
  2.7002 +#  error "unknown memory model"
  2.7003 +#endif
  2.7004 +#else
  2.7005 +    return fread(buf, 1, size, fp);
  2.7006 +#endif
  2.7007 +}
  2.7008 +ACCLIB_PUBLIC(acc_hsize_t, acc_hfwrite) (void* vfp, const acc_hvoid_p buf, acc_hsize_t size)
  2.7009 +{
  2.7010 +    FILE* fp = ACC_STATIC_CAST(FILE *, vfp);
  2.7011 +#if (ACC_HAVE_MM_HUGE_PTR)
  2.7012 +#if (ACC_MM_TINY || ACC_MM_SMALL || ACC_MM_MEDIUM)
  2.7013 +#define __ACCLIB_REQUIRE_HMEMCPY_CH 1
  2.7014 +    unsigned char tmp[512];
  2.7015 +    acc_hsize_t l = 0;
  2.7016 +    while (l < size)
  2.7017 +    {
  2.7018 +        size_t n = size - l > sizeof(tmp) ? sizeof(tmp) : (size_t) (size - l);
  2.7019 +        __ACCLIB_FUNCNAME(acc_hmemcpy)(tmp, (const acc_hbyte_p)buf + l, (acc_hsize_t)n);
  2.7020 +        n = fwrite(tmp, 1, n, fp);
  2.7021 +        if (n == 0)
  2.7022 +            break;
  2.7023 +        l += n;
  2.7024 +    }
  2.7025 +    return l;
  2.7026 +#elif (ACC_MM_COMPACT || ACC_MM_LARGE || ACC_MM_HUGE)
  2.7027 +    const acc_hbyte_p b = (const acc_hbyte_p) buf;
  2.7028 +    acc_hsize_t l = 0;
  2.7029 +    while (l < size)
  2.7030 +    {
  2.7031 +        size_t n;
  2.7032 +        n = ACC_PTR_FP_OFF(b); n = (n <= 1) ? 0x8000u : (0u - n);
  2.7033 +        if ((acc_hsize_t) n > size - l)
  2.7034 +            n = (size_t) (size - l);
  2.7035 +        n = fwrite((void __far*)b, 1, n, fp);
  2.7036 +        if (n == 0)
  2.7037 +            break;
  2.7038 +        b += n; l += n;
  2.7039 +    }
  2.7040 +    return l;
  2.7041 +#else
  2.7042 +#  error "unknown memory model"
  2.7043 +#endif
  2.7044 +#else
  2.7045 +    return fwrite(buf, 1, size, fp);
  2.7046 +#endif
  2.7047 +}
  2.7048 +#endif
  2.7049 +#if defined(ACC_WANT_ACCLIB_HSREAD)
  2.7050 +#  undef ACC_WANT_ACCLIB_HSREAD
  2.7051 +#define __ACCLIB_HSREAD_CH_INCLUDED 1
  2.7052 +#if !defined(ACCLIB_PUBLIC)
  2.7053 +#  define ACCLIB_PUBLIC(r,f)    r __ACCLIB_FUNCNAME(f)
  2.7054 +#endif
  2.7055 +ACCLIB_PUBLIC(long, acc_safe_hread) (int fd, acc_hvoid_p buf, long size)
  2.7056 +{
  2.7057 +    acc_hbyte_p b = (acc_hbyte_p) buf;
  2.7058 +    long l = 0;
  2.7059 +    int saved_errno;
  2.7060 +    saved_errno = errno;
  2.7061 +    while (l < size)
  2.7062 +    {
  2.7063 +        long n = size - l;
  2.7064 +#if (ACC_HAVE_MM_HUGE_PTR)
  2.7065 +#  define __ACCLIB_REQUIRE_HREAD_CH 1
  2.7066 +        errno = 0; n = acc_hread(fd, b, n);
  2.7067 +#elif (ACC_OS_DOS32) && defined(__DJGPP__)
  2.7068 +        errno = 0; n = _read(fd, b, n);
  2.7069 +#else
  2.7070 +        errno = 0; n = read(fd, b, n);
  2.7071 +#endif
  2.7072 +        if (n == 0)
  2.7073 +            break;
  2.7074 +        if (n < 0) {
  2.7075 +#if defined(EAGAIN)
  2.7076 +            if (errno == (EAGAIN)) continue;
  2.7077 +#endif
  2.7078 +#if defined(EINTR)
  2.7079 +            if (errno == (EINTR)) continue;
  2.7080 +#endif
  2.7081 +            if (errno == 0) errno = 1;
  2.7082 +            return l;
  2.7083 +        }
  2.7084 +        b += n; l += n;
  2.7085 +    }
  2.7086 +    errno = saved_errno;
  2.7087 +    return l;
  2.7088 +}
  2.7089 +ACCLIB_PUBLIC(long, acc_safe_hwrite) (int fd, const acc_hvoid_p buf, long size)
  2.7090 +{
  2.7091 +    const acc_hbyte_p b = (const acc_hbyte_p) buf;
  2.7092 +    long l = 0;
  2.7093 +    int saved_errno;
  2.7094 +    saved_errno = errno;
  2.7095 +    while (l < size)
  2.7096 +    {
  2.7097 +        long n = size - l;
  2.7098 +#if (ACC_HAVE_MM_HUGE_PTR)
  2.7099 +#  define __ACCLIB_REQUIRE_HREAD_CH 1
  2.7100 +        errno = 0; n = acc_hwrite(fd, b, n);
  2.7101 +#elif (ACC_OS_DOS32) && defined(__DJGPP__)
  2.7102 +        errno = 0; n = _write(fd, b, n);
  2.7103 +#else
  2.7104 +        errno = 0; n = write(fd, b, n);
  2.7105 +#endif
  2.7106 +        if (n == 0)
  2.7107 +            break;
  2.7108 +        if (n < 0) {
  2.7109 +#if defined(EAGAIN)
  2.7110 +            if (errno == (EAGAIN)) continue;
  2.7111 +#endif
  2.7112 +#if defined(EINTR)
  2.7113 +            if (errno == (EINTR)) continue;
  2.7114 +#endif
  2.7115 +            if (errno == 0) errno = 1;
  2.7116 +            return l;
  2.7117 +        }
  2.7118 +        b += n; l += n;
  2.7119 +    }
  2.7120 +    errno = saved_errno;
  2.7121 +    return l;
  2.7122 +}
  2.7123 +#endif
  2.7124 +#if defined(ACC_WANT_ACCLIB_PCLOCK)
  2.7125 +#  undef ACC_WANT_ACCLIB_PCLOCK
  2.7126 +#define __ACCLIB_PCLOCK_CH_INCLUDED 1
  2.7127 +#if !defined(ACCLIB_PUBLIC)
  2.7128 +#  define ACCLIB_PUBLIC(r,f)    r __ACCLIB_FUNCNAME(f)
  2.7129 +#endif
  2.7130 +#if 1 && (ACC_OS_POSIX_LINUX && ACC_ARCH_AMD64 && ACC_ASM_SYNTAX_GNUC && !ACC_CFG_NO_SYSCALL)
  2.7131 +#ifndef acc_pclock_syscall_clock_gettime
  2.7132 +#define acc_pclock_syscall_clock_gettime acc_pclock_syscall_clock_gettime
  2.7133 +#endif
  2.7134 +__acc_static_noinline long acc_pclock_syscall_clock_gettime(long clockid, struct timespec *ts)
  2.7135 +{
  2.7136 +    unsigned long r = 228;
  2.7137 +    __asm__ __volatile__("syscall\n" : "=a" (r), "=m" (*ts) : "0" (r), "D" (clockid), "S" (ts) __ACC_ASM_CLOBBER_LIST_CC);
  2.7138 +    return ACC_ICAST(long, r);
  2.7139 +}
  2.7140 +#endif
  2.7141 +#if 1 && (ACC_OS_POSIX_LINUX && ACC_ARCH_I386 && ACC_ASM_SYNTAX_GNUC && !ACC_CFG_NO_SYSCALL) && defined(acc_int64l_t)
  2.7142 +#ifndef acc_pclock_syscall_clock_gettime
  2.7143 +#define acc_pclock_syscall_clock_gettime acc_pclock_syscall_clock_gettime
  2.7144 +#endif
  2.7145 +__acc_static_noinline long acc_pclock_syscall_clock_gettime(long clockid, struct timespec *ts)
  2.7146 +{
  2.7147 +    unsigned long r = 265;
  2.7148 +    __asm__ __volatile__("pushl %%ebx\n pushl %%edx\n popl %%ebx\n int $0x80\n popl %%ebx\n": "=a" (r), "=m" (*ts) : "0" (r), "d" (clockid), "c" (ts) __ACC_ASM_CLOBBER_LIST_CC);
  2.7149 +    return ACC_ICAST(long, r);
  2.7150 +}
  2.7151 +#endif
  2.7152 +#if 0 && defined(acc_pclock_syscall_clock_gettime)
  2.7153 +#ifndef acc_pclock_read_clock_gettime_r_syscall
  2.7154 +#define acc_pclock_read_clock_gettime_r_syscall acc_pclock_read_clock_gettime_r_syscall
  2.7155 +#endif
  2.7156 +static int acc_pclock_read_clock_gettime_r_syscall(acc_pclock_handle_p h, acc_pclock_p c)
  2.7157 +{
  2.7158 +     struct timespec ts;
  2.7159 +    if (acc_pclock_syscall_clock_gettime(0, &ts) != 0)
  2.7160 +        return -1;
  2.7161 +    c->tv_sec = ts.tv_sec;
  2.7162 +    c->tv_nsec = ACC_STATIC_CAST(acc_uint32l_t, ts.tv_nsec);
  2.7163 +    ACC_UNUSED(h); return 0;
  2.7164 +}
  2.7165 +#endif
  2.7166 +#if (HAVE_GETTIMEOFDAY)
  2.7167 +#ifndef acc_pclock_read_gettimeofday
  2.7168 +#define acc_pclock_read_gettimeofday acc_pclock_read_gettimeofday
  2.7169 +#endif
  2.7170 +static int acc_pclock_read_gettimeofday(acc_pclock_handle_p h, acc_pclock_p c)
  2.7171 +{
  2.7172 +    struct timeval tv;
  2.7173 +    if (gettimeofday(&tv, NULL) != 0)
  2.7174 +        return -1;
  2.7175 +#if defined(acc_int64l_t)
  2.7176 +    c->tv_sec = tv.tv_sec;
  2.7177 +#else
  2.7178 +    c->tv_sec_high = 0;
  2.7179 +    c->tv_sec_low = tv.tv_sec;
  2.7180 +#endif
  2.7181 +    c->tv_nsec = ACC_STATIC_CAST(acc_uint32l_t, (tv.tv_usec * 1000u));
  2.7182 +    ACC_UNUSED(h); return 0;
  2.7183 +}
  2.7184 +#endif
  2.7185 +#if defined(CLOCKS_PER_SEC) && !(ACC_CFG_NO_DOUBLE)
  2.7186 +#ifndef acc_pclock_read_clock
  2.7187 +#define acc_pclock_read_clock acc_pclock_read_clock
  2.7188 +#endif
  2.7189 +static int acc_pclock_read_clock(acc_pclock_handle_p h, acc_pclock_p c)
  2.7190 +{
  2.7191 +    clock_t ticks;
  2.7192 +    double secs;
  2.7193 +#if defined(acc_int64l_t)
  2.7194 +    acc_uint64l_t nsecs;
  2.7195 +    ticks = clock();
  2.7196 +    secs = ACC_STATIC_CAST(double, ticks) / (CLOCKS_PER_SEC);
  2.7197 +    nsecs = ACC_STATIC_CAST(acc_uint64l_t, (secs * 1000000000.0));
  2.7198 +    c->tv_sec = ACC_STATIC_CAST(acc_int64l_t, (nsecs / 1000000000ul));
  2.7199 +    nsecs = (nsecs % 1000000000ul);
  2.7200 +    c->tv_nsec = ACC_STATIC_CAST(acc_uint32l_t, nsecs);
  2.7201 +#else
  2.7202 +    ticks = clock();
  2.7203 +    secs = ACC_STATIC_CAST(double, ticks) / (CLOCKS_PER_SEC);
  2.7204 +    c->tv_sec_high = 0;
  2.7205 +    c->tv_sec_low = ACC_STATIC_CAST(acc_uint32l_t, (secs + 0.5));
  2.7206 +    c->tv_nsec = 0;
  2.7207 +#endif
  2.7208 +    ACC_UNUSED(h); return 0;
  2.7209 +}
  2.7210 +#endif
  2.7211 +#if 1 && defined(acc_pclock_syscall_clock_gettime)
  2.7212 +#ifndef acc_pclock_read_clock_gettime_m_syscall
  2.7213 +#define acc_pclock_read_clock_gettime_m_syscall acc_pclock_read_clock_gettime_m_syscall
  2.7214 +#endif
  2.7215 +static int acc_pclock_read_clock_gettime_m_syscall(acc_pclock_handle_p h, acc_pclock_p c)
  2.7216 +{
  2.7217 +     struct timespec ts;
  2.7218 +    if (acc_pclock_syscall_clock_gettime(1, &ts) != 0)
  2.7219 +        return -1;
  2.7220 +    c->tv_sec = ts.tv_sec;
  2.7221 +    c->tv_nsec = ACC_STATIC_CAST(acc_uint32l_t, ts.tv_nsec);
  2.7222 +    ACC_UNUSED(h); return 0;
  2.7223 +}
  2.7224 +#endif
  2.7225 +#if (ACC_OS_DOS32 && ACC_CC_GNUC) && defined(__DJGPP__) && defined(UCLOCKS_PER_SEC) && !(ACC_CFG_NO_DOUBLE)
  2.7226 +#ifndef acc_pclock_read_uclock
  2.7227 +#define acc_pclock_read_uclock acc_pclock_read_uclock
  2.7228 +#endif
  2.7229 +static int acc_pclock_read_uclock(acc_pclock_handle_p h, acc_pclock_p c)
  2.7230 +{
  2.7231 +    acc_uint64l_t ticks;
  2.7232 +    double secs;
  2.7233 +    acc_uint64l_t nsecs;
  2.7234 +    ticks = uclock();
  2.7235 +    secs = ACC_STATIC_CAST(double, ticks) / (UCLOCKS_PER_SEC);
  2.7236 +    nsecs = ACC_STATIC_CAST(acc_uint64l_t, (secs * 1000000000.0));
  2.7237 +    c->tv_sec = nsecs / 1000000000ul;
  2.7238 +    c->tv_nsec = ACC_STATIC_CAST(acc_uint32l_t, (nsecs % 1000000000ul));
  2.7239 +    ACC_UNUSED(h); return 0;
  2.7240 +}
  2.7241 +#endif
  2.7242 +#if 1 && (HAVE_CLOCK_GETTIME) && defined(CLOCK_PROCESS_CPUTIME_ID) && defined(acc_int64l_t)
  2.7243 +#ifndef acc_pclock_read_clock_gettime_p_libc
  2.7244 +#define acc_pclock_read_clock_gettime_p_libc acc_pclock_read_clock_gettime_p_libc
  2.7245 +#endif
  2.7246 +static int acc_pclock_read_clock_gettime_p_libc(acc_pclock_handle_p h, acc_pclock_p c)
  2.7247 +{
  2.7248 +    struct timespec ts;
  2.7249 +    if (clock_gettime(CLOCK_PROCESS_CPUTIME_ID, &ts) != 0)
  2.7250 +        return -1;
  2.7251 +    c->tv_sec = ts.tv_sec;
  2.7252 +    c->tv_nsec = ACC_STATIC_CAST(acc_uint32l_t, ts.tv_nsec);
  2.7253 +    ACC_UNUSED(h); return 0;
  2.7254 +}
  2.7255 +#endif
  2.7256 +#if 1 && defined(acc_pclock_syscall_clock_gettime)
  2.7257 +#ifndef acc_pclock_read_clock_gettime_p_syscall
  2.7258 +#define acc_pclock_read_clock_gettime_p_syscall acc_pclock_read_clock_gettime_p_syscall
  2.7259 +#endif
  2.7260 +static int acc_pclock_read_clock_gettime_p_syscall(acc_pclock_handle_p h, acc_pclock_p c)
  2.7261 +{
  2.7262 +     struct timespec ts;
  2.7263 +    if (acc_pclock_syscall_clock_gettime(2, &ts) != 0)
  2.7264 +        return -1;
  2.7265 +    c->tv_sec = ts.tv_sec;
  2.7266 +    c->tv_nsec = ACC_STATIC_CAST(acc_uint32l_t, ts.tv_nsec);
  2.7267 +    ACC_UNUSED(h); return 0;
  2.7268 +}
  2.7269 +#endif
  2.7270 +#if (ACC_OS_CYGWIN || ACC_OS_WIN32 || ACC_OS_WIN64) && (ACC_HAVE_WINDOWS_H) && defined(acc_int64l_t)
  2.7271 +#ifndef acc_pclock_read_getprocesstimes
  2.7272 +#define acc_pclock_read_getprocesstimes acc_pclock_read_getprocesstimes
  2.7273 +#endif
  2.7274 +static int acc_pclock_read_getprocesstimes(acc_pclock_handle_p h, acc_pclock_p c)
  2.7275 +{
  2.7276 +    FILETIME ct, et, kt, ut;
  2.7277 +    acc_uint64l_t ticks;
  2.7278 +    if (GetProcessTimes(GetCurrentProcess(), &ct, &et, &kt, &ut) == 0)
  2.7279 +        return -1;
  2.7280 +    ticks = (ACC_STATIC_CAST(acc_uint64l_t, ut.dwHighDateTime) << 32) | ut.dwLowDateTime;
  2.7281 +    if __acc_unlikely(h->ticks_base == 0)
  2.7282 +        h->ticks_base = ticks;
  2.7283 +    else
  2.7284 +        ticks -= h->ticks_base;
  2.7285 +    c->tv_sec = ACC_STATIC_CAST(acc_int64l_t, (ticks / 10000000ul));
  2.7286 +    ticks = (ticks % 10000000ul) * 100u;
  2.7287 +    c->tv_nsec = ACC_STATIC_CAST(acc_uint32l_t, ticks);
  2.7288 +    ACC_UNUSED(h); return 0;
  2.7289 +}
  2.7290 +#endif
  2.7291 +#if (HAVE_GETRUSAGE) && defined(RUSAGE_SELF)
  2.7292 +#ifndef acc_pclock_read_getrusage
  2.7293 +#define acc_pclock_read_getrusage acc_pclock_read_getrusage
  2.7294 +#endif
  2.7295 +static int acc_pclock_read_getrusage(acc_pclock_handle_p h, acc_pclock_p c)
  2.7296 +{
  2.7297 +    struct rusage ru;
  2.7298 +    if (getrusage(RUSAGE_SELF, &ru) != 0)
  2.7299 +        return -1;
  2.7300 +#if defined(acc_int64l_t)
  2.7301 +    c->tv_sec = ru.ru_utime.tv_sec;
  2.7302 +#else
  2.7303 +    c->tv_sec_high = 0;
  2.7304 +    c->tv_sec_low = ru.ru_utime.tv_sec;
  2.7305 +#endif
  2.7306 +    c->tv_nsec = ACC_STATIC_CAST(acc_uint32l_t, (ru.ru_utime.tv_usec * 1000u));
  2.7307 +    ACC_UNUSED(h); return 0;
  2.7308 +}
  2.7309 +#endif
  2.7310 +#if 1 && (HAVE_CLOCK_GETTIME) && defined(CLOCK_THREAD_CPUTIME_ID) && defined(acc_int64l_t)
  2.7311 +#ifndef acc_pclock_read_clock_gettime_t_libc
  2.7312 +#define acc_pclock_read_clock_gettime_t_libc acc_pclock_read_clock_gettime_t_libc
  2.7313 +#endif
  2.7314 +static int acc_pclock_read_clock_gettime_t_libc(acc_pclock_handle_p h, acc_pclock_p c)
  2.7315 +{
  2.7316 +    struct timespec ts;
  2.7317 +    if (clock_gettime(CLOCK_THREAD_CPUTIME_ID, &ts) != 0)
  2.7318 +        return -1;
  2.7319 +    c->tv_sec = ts.tv_sec;
  2.7320 +    c->tv_nsec = (acc_uint32l_t) ts.tv_nsec;
  2.7321 +    ACC_UNUSED(h); return 0;
  2.7322 +}
  2.7323 +#endif
  2.7324 +#if 1 && defined(acc_pclock_syscall_clock_gettime)
  2.7325 +#ifndef acc_pclock_read_clock_gettime_t_syscall
  2.7326 +#define acc_pclock_read_clock_gettime_t_syscall acc_pclock_read_clock_gettime_t_syscall
  2.7327 +#endif
  2.7328 +static int acc_pclock_read_clock_gettime_t_syscall(acc_pclock_handle_p h, acc_pclock_p c)
  2.7329 +{
  2.7330 +     struct timespec ts;
  2.7331 +    if (acc_pclock_syscall_clock_gettime(3, &ts) != 0)
  2.7332 +        return -1;
  2.7333 +    c->tv_sec = ts.tv_sec;
  2.7334 +    c->tv_nsec = ACC_STATIC_CAST(acc_uint32l_t, ts.tv_nsec);
  2.7335 +    ACC_UNUSED(h); return 0;
  2.7336 +}
  2.7337 +#endif
  2.7338 +#if (ACC_OS_CYGWIN || ACC_OS_WIN32 || ACC_OS_WIN64) && (ACC_HAVE_WINDOWS_H) && defined(acc_int64l_t)
  2.7339 +#ifndef acc_pclock_read_getthreadtimes
  2.7340 +#define acc_pclock_read_getthreadtimes acc_pclock_read_getthreadtimes
  2.7341 +#endif
  2.7342 +static int acc_pclock_read_getthreadtimes(acc_pclock_handle_p h, acc_pclock_p c)
  2.7343 +{
  2.7344 +    FILETIME ct, et, kt, ut;
  2.7345 +    acc_uint64l_t ticks;
  2.7346 +    if (GetThreadTimes(GetCurrentThread(), &ct, &et, &kt, &ut) == 0)
  2.7347 +        return -1;
  2.7348 +    ticks = (ACC_STATIC_CAST(acc_uint64l_t, ut.dwHighDateTime) << 32) | ut.dwLowDateTime;
  2.7349 +    if __acc_unlikely(h->ticks_base == 0)
  2.7350 +        h->ticks_base = ticks;
  2.7351 +    else
  2.7352 +        ticks -= h->ticks_base;
  2.7353 +    c->tv_sec = ACC_STATIC_CAST(acc_int64l_t, (ticks / 10000000ul));
  2.7354 +    ticks = (ticks % 10000000ul) * 100u;
  2.7355 +    c->tv_nsec = ACC_STATIC_CAST(acc_uint32l_t, ticks);
  2.7356 +    ACC_UNUSED(h); return 0;
  2.7357 +}
  2.7358 +#endif
  2.7359 +ACCLIB_PUBLIC(int, acc_pclock_open) (acc_pclock_handle_p h, int mode)
  2.7360 +{
  2.7361 +    acc_pclock_t c;
  2.7362 +    int i;
  2.7363 +    h->h = ACC_STATIC_CAST(acclib_handle_t, 0);
  2.7364 +    h->mode = -1;
  2.7365 +    h->read_error = 2;
  2.7366 +    h->name = NULL;
  2.7367 +    h->gettime = ACC_STATIC_CAST(acc_pclock_gettime_t, 0);
  2.7368 +#if defined(acc_int64l_t)
  2.7369 +    h->ticks_base = 0;
  2.7370 +#endif
  2.7371 +    switch (mode)
  2.7372 +    {
  2.7373 +    case ACC_PCLOCK_REALTIME:
  2.7374 +#     if defined(acc_pclock_read_clock_gettime_r_syscall)
  2.7375 +        if (acc_pclock_read_clock_gettime_r_syscall(h, &c) == 0) {
  2.7376 +            h->gettime = acc_pclock_read_clock_gettime_r_syscall;
  2.7377 +            h->name = "CLOCK_REALTIME/syscall";
  2.7378 +            break;
  2.7379 +        }
  2.7380 +#     endif
  2.7381 +#     if defined(acc_pclock_read_gettimeofday)
  2.7382 +        if (acc_pclock_read_gettimeofday(h, &c) == 0) {
  2.7383 +            h->gettime = acc_pclock_read_gettimeofday;
  2.7384 +            h->name = "gettimeofday";
  2.7385 +            break;
  2.7386 +        }
  2.7387 +#     endif
  2.7388 +        break;
  2.7389 +    case ACC_PCLOCK_MONOTONIC:
  2.7390 +#     if defined(acc_pclock_read_clock_gettime_m_syscall)
  2.7391 +        if (acc_pclock_read_clock_gettime_m_syscall(h, &c) == 0) {
  2.7392 +            h->gettime = acc_pclock_read_clock_gettime_m_syscall;
  2.7393 +            h->name = "CLOCK_MONOTONIC/syscall";
  2.7394 +            break;
  2.7395 +        }
  2.7396 +#     endif
  2.7397 +#     if defined(acc_pclock_read_uclock)
  2.7398 +        if (acc_pclock_read_uclock(h, &c) == 0) {
  2.7399 +            h->gettime = acc_pclock_read_uclock;
  2.7400 +            h->name = "uclock";
  2.7401 +            break;
  2.7402 +        }
  2.7403 +#     endif
  2.7404 +#     if defined(acc_pclock_read_clock)
  2.7405 +        if (acc_pclock_read_clock(h, &c) == 0) {
  2.7406 +            h->gettime = acc_pclock_read_clock;
  2.7407 +            h->name = "clock";
  2.7408 +            break;
  2.7409 +        }
  2.7410 +#     endif
  2.7411 +        break;
  2.7412 +    case ACC_PCLOCK_PROCESS_CPUTIME_ID:
  2.7413 +#     if defined(acc_pclock_read_getprocesstimes)
  2.7414 +        if (acc_pclock_read_getprocesstimes(h, &c) == 0) {
  2.7415 +            h->gettime = acc_pclock_read_getprocesstimes;
  2.7416 +            h->name = "GetProcessTimes";
  2.7417 +            break;
  2.7418 +        }
  2.7419 +#     endif
  2.7420 +#     if defined(acc_pclock_read_clock_gettime_p_syscall)
  2.7421 +        if (acc_pclock_read_clock_gettime_p_syscall(h, &c) == 0) {
  2.7422 +            h->gettime = acc_pclock_read_clock_gettime_p_syscall;
  2.7423 +            h->name = "CLOCK_PROCESS_CPUTIME_ID/syscall";
  2.7424 +            break;
  2.7425 +        }
  2.7426 +#     endif
  2.7427 +#     if defined(acc_pclock_read_clock_gettime_p_libc)
  2.7428 +        if (acc_pclock_read_clock_gettime_p_libc(h, &c) == 0) {
  2.7429 +            h->gettime = acc_pclock_read_clock_gettime_p_libc;
  2.7430 +            h->name = "CLOCK_PROCESS_CPUTIME_ID/libc";
  2.7431 +            break;
  2.7432 +        }
  2.7433 +#     endif
  2.7434 +#     if defined(acc_pclock_read_getrusage)
  2.7435 +        if (acc_pclock_read_getrusage(h, &c) == 0) {
  2.7436 +            h->gettime = acc_pclock_read_getrusage;
  2.7437 +            h->name = "getrusage";
  2.7438 +            break;
  2.7439 +        }
  2.7440 +#     endif
  2.7441 +        break;
  2.7442 +    case ACC_PCLOCK_THREAD_CPUTIME_ID:
  2.7443 +#     if defined(acc_pclock_read_getthreadtimes)
  2.7444 +        if (acc_pclock_read_getthreadtimes(h, &c) == 0) {
  2.7445 +            h->gettime = acc_pclock_read_getthreadtimes;
  2.7446 +            h->name = "GetThreadTimes";
  2.7447 +        }
  2.7448 +#     endif
  2.7449 +#     if defined(acc_pclock_read_clock_gettime_t_syscall)
  2.7450 +        if (acc_pclock_read_clock_gettime_t_syscall(h, &c) == 0) {
  2.7451 +            h->gettime = acc_pclock_read_clock_gettime_t_syscall;
  2.7452 +            h->name = "CLOCK_THREAD_CPUTIME_ID/syscall";
  2.7453 +            break;
  2.7454 +        }
  2.7455 +#     endif
  2.7456 +#     if defined(acc_pclock_read_clock_gettime_t_libc)
  2.7457 +        if (acc_pclock_read_clock_gettime_t_libc(h, &c) == 0) {
  2.7458 +            h->gettime = acc_pclock_read_clock_gettime_t_libc;
  2.7459 +            h->name = "CLOCK_THREAD_CPUTIME_ID/libc";
  2.7460 +            break;
  2.7461 +        }
  2.7462 +#     endif
  2.7463 +        break;
  2.7464 +    }
  2.7465 +    if (!h->gettime)
  2.7466 +        return -1;
  2.7467 +    if (!h->h)
  2.7468 +        h->h = ACC_STATIC_CAST(acclib_handle_t, 1);
  2.7469 +    h->mode = mode;
  2.7470 +    h->read_error = 0;
  2.7471 +    if (!h->name)
  2.7472 +        h->name = "unknown";
  2.7473 +    for (i = 0; i < 10; i++) {
  2.7474 +        __ACCLIB_FUNCNAME(acc_pclock_read)(h, &c);
  2.7475 +    }
  2.7476 +    return 0;
  2.7477 +}
  2.7478 +ACCLIB_PUBLIC(int, acc_pclock_open_default) (acc_pclock_handle_p h)
  2.7479 +{
  2.7480 +    if (__ACCLIB_FUNCNAME(acc_pclock_open)(h, ACC_PCLOCK_PROCESS_CPUTIME_ID) == 0)
  2.7481 +        return 0;
  2.7482 +    if (__ACCLIB_FUNCNAME(acc_pclock_open)(h, ACC_PCLOCK_MONOTONIC) == 0)
  2.7483 +        return 0;
  2.7484 +    if (__ACCLIB_FUNCNAME(acc_pclock_open)(h, ACC_PCLOCK_REALTIME) == 0)
  2.7485 +        return 0;
  2.7486 +    if (__ACCLIB_FUNCNAME(acc_pclock_open)(h, ACC_PCLOCK_THREAD_CPUTIME_ID) == 0)
  2.7487 +        return 0;
  2.7488 +    return -1;
  2.7489 +}
  2.7490 +ACCLIB_PUBLIC(int, acc_pclock_close) (acc_pclock_handle_p h)
  2.7491 +{
  2.7492 +    h->h = ACC_STATIC_CAST(acclib_handle_t, 0);
  2.7493 +    h->mode = -1;
  2.7494 +    h->name = NULL;
  2.7495 +    h->gettime = ACC_STATIC_CAST(acc_pclock_gettime_t, 0);
  2.7496 +    return 0;
  2.7497 +}
  2.7498 +ACCLIB_PUBLIC(void, acc_pclock_read) (acc_pclock_handle_p h, acc_pclock_p c)
  2.7499 +{
  2.7500 +    if (h->gettime) {
  2.7501 +        if (h->gettime(h, c) == 0)
  2.7502 +            return;
  2.7503 +    }
  2.7504 +    h->read_error = 1;
  2.7505 +#if defined(acc_int64l_t)
  2.7506 +    c->tv_sec = 0;
  2.7507 +#else
  2.7508 +    c->tv_sec_high = 0;
  2.7509 +    c->tv_sec_low = 0;
  2.7510 +#endif
  2.7511 +    c->tv_nsec = 0;
  2.7512 +}
  2.7513 +#if !(ACC_CFG_NO_DOUBLE)
  2.7514 +ACCLIB_PUBLIC(double, acc_pclock_get_elapsed) (acc_pclock_handle_p h, const acc_pclock_p start, const acc_pclock_p stop)
  2.7515 +{
  2.7516 +    if (!h->h) { h->mode = -1; return 0.0; }
  2.7517 +    {
  2.7518 +#if 1 && (ACC_ARCH_I386 && ACC_CC_GNUC) && defined(__STRICT_ALIGNMENT__)
  2.7519 +    float tstop, tstart;
  2.7520 +    tstop  = ACC_STATIC_CAST(float, (stop->tv_sec  + stop->tv_nsec  / 1000000000.0));
  2.7521 +    tstart = ACC_STATIC_CAST(float, (start->tv_sec + start->tv_nsec / 1000000000.0));
  2.7522 +#elif defined(acc_int64l_t)
  2.7523 +    double tstop, tstart;
  2.7524 +#if 1 && (ACC_CC_INTELC)
  2.7525 +    { acc_int64l_t a = stop->tv_sec; acc_uint32l_t b = stop->tv_nsec;
  2.7526 +    tstop = a + b / 1000000000.0; }
  2.7527 +    { acc_int64l_t a = start->tv_sec; acc_uint32l_t b = start->tv_nsec;
  2.7528 +    tstart = a + b / 1000000000.0; }
  2.7529 +#else
  2.7530 +    tstop  = stop->tv_sec  + stop->tv_nsec  / 1000000000.0;
  2.7531 +    tstart = start->tv_sec + start->tv_nsec / 1000000000.0;
  2.7532 +#endif
  2.7533 +#else
  2.7534 +    double tstop, tstart;
  2.7535 +    tstop  = stop->tv_sec_low  + stop->tv_nsec  / 1000000000.0;
  2.7536 +    tstart = start->tv_sec_low + start->tv_nsec / 1000000000.0;
  2.7537 +#endif
  2.7538 +    return tstop - tstart;
  2.7539 +    }
  2.7540 +}
  2.7541 +#endif
  2.7542 +ACCLIB_PUBLIC(int, acc_pclock_flush_cpu_cache) (acc_pclock_handle_p h, unsigned flags)
  2.7543 +{
  2.7544 +    ACC_UNUSED(h); ACC_UNUSED(flags);
  2.7545 +    return -1;
  2.7546 +}
  2.7547 +#endif
  2.7548 +#if defined(ACC_WANT_ACCLIB_MISC)
  2.7549 +#  undef ACC_WANT_ACCLIB_MISC
  2.7550 +#define __ACCLIB_MISC_CH_INCLUDED 1
  2.7551 +#if !defined(ACCLIB_PUBLIC)
  2.7552 +#  define ACCLIB_PUBLIC(r,f)                r __ACCLIB_FUNCNAME(f)
  2.7553 +#endif
  2.7554 +#if !defined(ACCLIB_PUBLIC_NOINLINE)
  2.7555 +#  if !defined(__acc_noinline)
  2.7556 +#    define ACCLIB_PUBLIC_NOINLINE(r,f)     r __ACCLIB_FUNCNAME(f)
  2.7557 +#  elif (ACC_CC_CLANG || (ACC_CC_GNUC >= 0x030400ul) || ACC_CC_LLVM)
  2.7558 +#    define ACCLIB_PUBLIC_NOINLINE(r,f)     __acc_noinline __attribute__((__used__)) r __ACCLIB_FUNCNAME(f)
  2.7559 +#  else
  2.7560 +#    define ACCLIB_PUBLIC_NOINLINE(r,f)     __acc_noinline r __ACCLIB_FUNCNAME(f)
  2.7561 +#  endif
  2.7562 +#endif
  2.7563 +#if (ACC_OS_WIN32 && ACC_CC_PELLESC && (__POCC__ >= 290))
  2.7564 +#  pragma warn(push)
  2.7565 +#  pragma warn(disable:2007)
  2.7566 +#endif
  2.7567 +ACCLIB_PUBLIC(const char *, acc_getenv) (const char *s)
  2.7568 +{
  2.7569 +#if (HAVE_GETENV)
  2.7570 +    return getenv(s);
  2.7571 +#else
  2.7572 +    ACC_UNUSED(s); return ACC_STATIC_CAST(const char *, 0);
  2.7573 +#endif
  2.7574 +}
  2.7575 +ACCLIB_PUBLIC(acc_intptr_t, acc_get_osfhandle) (int fd)
  2.7576 +{
  2.7577 +    if (fd < 0)
  2.7578 +        return -1;
  2.7579 +#if (ACC_OS_CYGWIN)
  2.7580 +    return get_osfhandle(fd);
  2.7581 +#elif (ACC_OS_EMX && defined(__RSXNT__))
  2.7582 +    return -1;
  2.7583 +#elif (ACC_OS_WIN32 && ACC_CC_GNUC) && defined(__PW32__)
  2.7584 +    return -1;
  2.7585 +#elif (ACC_OS_WIN32 || ACC_OS_WIN64)
  2.7586 +# if (ACC_CC_PELLESC && (__POCC__ < 280))
  2.7587 +    return -1;
  2.7588 +# elif (ACC_CC_WATCOMC && (__WATCOMC__ < 1000))
  2.7589 +    return -1;
  2.7590 +# elif (ACC_CC_WATCOMC && (__WATCOMC__ < 1100))
  2.7591 +    return _os_handle(fd);
  2.7592 +# else
  2.7593 +    return _get_osfhandle(fd);
  2.7594 +# endif
  2.7595 +#else
  2.7596 +    return fd;
  2.7597 +#endif
  2.7598 +}
  2.7599 +ACCLIB_PUBLIC(int, acc_set_binmode) (int fd, int binary)
  2.7600 +{
  2.7601 +#if (ACC_ARCH_M68K && ACC_OS_TOS && ACC_CC_GNUC) && defined(__MINT__)
  2.7602 +    FILE* fp; int old_binary;
  2.7603 +    if (fd == STDIN_FILENO) fp = stdin;
  2.7604 +    else if (fd == STDOUT_FILENO) fp = stdout;
  2.7605 +    else if (fd == STDERR_FILENO) fp = stderr;
  2.7606 +    else return -1;
  2.7607 +    old_binary = fp->__mode.__binary;
  2.7608 +    __set_binmode(fp, binary ? 1 : 0);
  2.7609 +    return old_binary ? 1 : 0;
  2.7610 +#elif (ACC_ARCH_M68K && ACC_OS_TOS)
  2.7611 +    ACC_UNUSED(fd); ACC_UNUSED(binary);
  2.7612 +    return -1;
  2.7613 +#elif (ACC_OS_DOS16 && (ACC_CC_AZTECC || ACC_CC_PACIFICC))
  2.7614 +    ACC_UNUSED(fd); ACC_UNUSED(binary);
  2.7615 +    return -1;
  2.7616 +#elif (ACC_OS_DOS32 && ACC_CC_GNUC) && defined(__DJGPP__)
  2.7617 +    int r; unsigned old_flags = __djgpp_hwint_flags;
  2.7618 +    ACC_COMPILE_TIME_ASSERT(O_BINARY > 0)
  2.7619 +    ACC_COMPILE_TIME_ASSERT(O_TEXT > 0)
  2.7620 +    if (fd < 0) return -1;
  2.7621 +    r = setmode(fd, binary ? O_BINARY : O_TEXT);
  2.7622 +    if ((old_flags & 1u) != (__djgpp_hwint_flags & 1u))
  2.7623 +        __djgpp_set_ctrl_c(!(old_flags & 1));
  2.7624 +    if (r == -1) return -1;
  2.7625 +    return (r & O_TEXT) ? 0 : 1;
  2.7626 +#elif (ACC_OS_WIN32 && ACC_CC_GNUC) && defined(__PW32__)
  2.7627 +    if (fd < 0) return -1;
  2.7628 +    ACC_UNUSED(binary);
  2.7629 +    return 1;
  2.7630 +#elif (ACC_OS_DOS32 && ACC_CC_HIGHC)
  2.7631 +    FILE* fp; int r;
  2.7632 +    if (fd == fileno(stdin)) fp = stdin;
  2.7633 +    else if (fd == fileno(stdout)) fp = stdout;
  2.7634 +    else if (fd == fileno(stderr)) fp = stderr;
  2.7635 +    else return -1;
  2.7636 +    r = _setmode(fp, binary ? _BINARY : _TEXT);
  2.7637 +    if (r == -1) return -1;
  2.7638 +    return (r & _BINARY) ? 1 : 0;
  2.7639 +#elif (ACC_OS_WIN32 && ACC_CC_MWERKS) && defined(__MSL__)
  2.7640 +    ACC_UNUSED(fd); ACC_UNUSED(binary);
  2.7641 +    return -1;
  2.7642 +#elif (ACC_OS_CYGWIN && (ACC_CC_GNUC < 0x025a00ul))
  2.7643 +    ACC_UNUSED(fd); ACC_UNUSED(binary);
  2.7644 +    return -1;
  2.7645 +#elif (ACC_OS_CYGWIN || ACC_OS_DOS16 || ACC_OS_DOS32 || ACC_OS_EMX || ACC_OS_OS2 || ACC_OS_OS216 || ACC_OS_WIN16 || ACC_OS_WIN32 || ACC_OS_WIN64)
  2.7646 +    int r;
  2.7647 +#if !(ACC_CC_ZORTECHC)
  2.7648 +    ACC_COMPILE_TIME_ASSERT(O_BINARY > 0)
  2.7649 +#endif
  2.7650 +    ACC_COMPILE_TIME_ASSERT(O_TEXT > 0)
  2.7651 +    if (fd < 0) return -1;
  2.7652 +    r = setmode(fd, binary ? O_BINARY : O_TEXT);
  2.7653 +    if (r == -1) return -1;
  2.7654 +    return (r & O_TEXT) ? 0 : 1;
  2.7655 +#else
  2.7656 +    if (fd < 0) return -1;
  2.7657 +    ACC_UNUSED(binary);
  2.7658 +    return 1;
  2.7659 +#endif
  2.7660 +}
  2.7661 +ACCLIB_PUBLIC(int, acc_isatty) (int fd)
  2.7662 +{
  2.7663 +    if (fd < 0)
  2.7664 +        return 0;
  2.7665 +#if (ACC_OS_DOS16 && !(ACC_CC_AZTECC))
  2.7666 +    {
  2.7667 +        union REGS ri, ro;
  2.7668 +        ri.x.ax = 0x4400; ri.x.bx = fd;
  2.7669 +        int86(0x21, &ri, &ro);
  2.7670 +        if ((ro.x.cflag & 1) == 0)
  2.7671 +            if ((ro.x.ax & 0x83) != 0x83)
  2.7672 +                return 0;
  2.7673 +    }
  2.7674 +#elif (ACC_OS_DOS32 && ACC_CC_WATCOMC)
  2.7675 +    {
  2.7676 +        union REGS ri, ro;
  2.7677 +        ri.w.ax = 0x4400; ri.w.bx = ACC_STATIC_CAST(unsigned short, fd);
  2.7678 +        int386(0x21, &ri, &ro);
  2.7679 +        if ((ro.w.cflag & 1) == 0)
  2.7680 +            if ((ro.w.ax & 0x83) != 0x83)
  2.7681 +                return 0;
  2.7682 +    }
  2.7683 +#elif (ACC_HAVE_WINDOWS_H)
  2.7684 +    {
  2.7685 +        acc_intptr_t h = __ACCLIB_FUNCNAME(acc_get_osfhandle)(fd);
  2.7686 +        ACC_COMPILE_TIME_ASSERT(sizeof(h) == sizeof(HANDLE))
  2.7687 +        if (h != -1)
  2.7688 +        {
  2.7689 +            DWORD d = 0;
  2.7690 +            if (GetConsoleMode(ACC_REINTERPRET_CAST(HANDLE, h), &d) == 0)
  2.7691 +                return 0;
  2.7692 +        }
  2.7693 +    }
  2.7694 +#endif
  2.7695 +#if (HAVE_ISATTY)
  2.7696 +    return (isatty(fd)) ? 1 : 0;
  2.7697 +#else
  2.7698 +    return 0;
  2.7699 +#endif
  2.7700 +}
  2.7701 +ACCLIB_PUBLIC(int, acc_mkdir) (const char* name, unsigned mode)
  2.7702 +{
  2.7703 +#if !(HAVE_MKDIR)
  2.7704 +    ACC_UNUSED(name); ACC_UNUSED(mode);
  2.7705 +    return -1;
  2.7706 +#elif (ACC_ARCH_M68K && ACC_OS_TOS && (ACC_CC_PUREC || ACC_CC_TURBOC))
  2.7707 +    ACC_UNUSED(mode);
  2.7708 +    return Dcreate(name);
  2.7709 +#elif (ACC_OS_DOS32 && ACC_CC_GNUC) && defined(__DJGPP__)
  2.7710 +    return mkdir(name, mode);
  2.7711 +#elif (ACC_OS_WIN32 && ACC_CC_GNUC) && defined(__PW32__)
  2.7712 +    return mkdir(name, mode);
  2.7713 +#elif ((ACC_OS_DOS16 || ACC_OS_DOS32) && (ACC_CC_HIGHC || ACC_CC_PACIFICC))
  2.7714 +    ACC_UNUSED(mode);
  2.7715 +    return mkdir(ACC_UNCONST_CAST(char *, name));
  2.7716 +#elif (ACC_OS_DOS16 || ACC_OS_DOS32 || ACC_OS_OS2 || ACC_OS_OS216 || ACC_OS_WIN16 || ACC_OS_WIN32 || ACC_OS_WIN64)
  2.7717 +    ACC_UNUSED(mode);
  2.7718 +    return mkdir(name);
  2.7719 +#elif (ACC_CC_WATCOMC)
  2.7720 +    return mkdir(name, ACC_STATIC_CAST(mode_t, mode));
  2.7721 +#else
  2.7722 +    return mkdir(name, mode);
  2.7723 +#endif
  2.7724 +}
  2.7725 +ACCLIB_PUBLIC(int, acc_rmdir) (const char* name)
  2.7726 +{
  2.7727 +#if !(HAVE_RMDIR)
  2.7728 +    ACC_UNUSED(name);
  2.7729 +    return -1;
  2.7730 +#elif ((ACC_OS_DOS16 || ACC_OS_DOS32) && (ACC_CC_HIGHC || ACC_CC_PACIFICC))
  2.7731 +    return rmdir(ACC_UNCONST_CAST(char *, name));
  2.7732 +#else
  2.7733 +    return rmdir(name);
  2.7734 +#endif
  2.7735 +}
  2.7736 +#if defined(acc_int32e_t)
  2.7737 +ACCLIB_PUBLIC(acc_int32e_t, acc_muldiv32s) (acc_int32e_t a, acc_int32e_t b, acc_int32e_t x)
  2.7738 +{
  2.7739 +    acc_int32e_t r = 0;
  2.7740 +    if __acc_likely(x != 0)
  2.7741 +    {
  2.7742 +#if defined(acc_int64l_t)
  2.7743 +        acc_int64l_t rr = (ACC_ICONV(acc_int64l_t, a) * b) / x;
  2.7744 +        r = ACC_ITRUNC(acc_int32e_t, rr);
  2.7745 +#else
  2.7746 +        ACC_UNUSED(a); ACC_UNUSED(b);
  2.7747 +#endif
  2.7748 +    }
  2.7749 +    return r;
  2.7750 +}
  2.7751 +ACCLIB_PUBLIC(acc_uint32e_t, acc_muldiv32u) (acc_uint32e_t a, acc_uint32e_t b, acc_uint32e_t x)
  2.7752 +{
  2.7753 +    acc_uint32e_t r = 0;
  2.7754 +    if __acc_likely(x != 0)
  2.7755 +    {
  2.7756 +#if defined(acc_int64l_t)
  2.7757 +        acc_uint64l_t rr = (ACC_ICONV(acc_uint64l_t, a) * b) / x;
  2.7758 +        r = ACC_ITRUNC(acc_uint32e_t, rr);
  2.7759 +#else
  2.7760 +        ACC_UNUSED(a); ACC_UNUSED(b);
  2.7761 +#endif
  2.7762 +    }
  2.7763 +    return r;
  2.7764 +}
  2.7765 +#endif
  2.7766 +#if (ACC_OS_WIN16)
  2.7767 +ACC_EXTERN_C void __far __pascal DebugBreak(void);
  2.7768 +#endif
  2.7769 +ACCLIB_PUBLIC_NOINLINE(void, acc_debug_break) (void)
  2.7770 +{
  2.7771 +#if (ACC_OS_WIN16)
  2.7772 +    DebugBreak();
  2.7773 +#elif (ACC_ARCH_I086)
  2.7774 +#elif (ACC_OS_WIN64) && (ACC_HAVE_WINDOWS_H)
  2.7775 +    DebugBreak();
  2.7776 +#elif (ACC_ARCH_AMD64 || ACC_ARCH_I386) && (ACC_ASM_SYNTAX_GNUC)
  2.7777 +    __asm__ __volatile__("int $3\n" : : __ACC_ASM_CLOBBER_LIST_CC_MEMORY);
  2.7778 +#elif (ACC_ARCH_I386) && (ACC_ASM_SYNTAX_MSC)
  2.7779 +    __asm { int 3 }
  2.7780 +#elif (ACC_OS_WIN32) && (ACC_HAVE_WINDOWS_H)
  2.7781 +    DebugBreak();
  2.7782 +#else
  2.7783 +    volatile acc_intptr_t a = -1;
  2.7784 +    * ACC_STATIC_CAST(volatile unsigned long *, ACC_REINTERPRET_CAST(volatile void *, a)) = ~0ul;
  2.7785 +#endif
  2.7786 +}
  2.7787 +ACCLIB_PUBLIC_NOINLINE(void, acc_debug_nop) (void)
  2.7788 +{
  2.7789 +}
  2.7790 +ACCLIB_PUBLIC_NOINLINE(int, acc_debug_align_check_query) (void)
  2.7791 +{
  2.7792 +#if (ACC_ARCH_AMD64 || ACC_ARCH_I386) && (ACC_ASM_SYNTAX_GNUC)
  2.7793 +# if (ACC_ARCH_AMD64)
  2.7794 +    acc_uint64e_t r = 0;
  2.7795 +# else
  2.7796 +    size_t r = 0;
  2.7797 +# endif
  2.7798 +    __asm__ __volatile__("pushf\n pop %0\n" : "=a" (r) : __ACC_ASM_CLOBBER_LIST_CC_MEMORY);
  2.7799 +    return ACC_ICONV(int, (r >> 18) & 1);
  2.7800 +#elif (ACC_ARCH_I386) && (ACC_ASM_SYNTAX_MSC)
  2.7801 +    unsigned long r;
  2.7802 +    __asm {
  2.7803 +        pushf
  2.7804 +        pop eax
  2.7805 +        mov r,eax
  2.7806 +    }
  2.7807 +    return ACC_ICONV(int, (r >> 18) & 1);
  2.7808 +#else
  2.7809 +    return -1;
  2.7810 +#endif
  2.7811 +}
  2.7812 +ACCLIB_PUBLIC_NOINLINE(int, acc_debug_align_check_enable) (int v)
  2.7813 +{
  2.7814 +#if (ACC_ARCH_AMD64) && (ACC_ASM_SYNTAX_GNUC)
  2.7815 +    if (v) {
  2.7816 +        __asm__ __volatile__("pushf\n orl $262144,(%%rsp)\n popf\n" : : __ACC_ASM_CLOBBER_LIST_CC_MEMORY);
  2.7817 +    } else {
  2.7818 +        __asm__ __volatile__("pushf\n andl $-262145,(%%rsp)\n popf\n" : : __ACC_ASM_CLOBBER_LIST_CC_MEMORY);
  2.7819 +    }
  2.7820 +    return 0;
  2.7821 +#elif (ACC_ARCH_I386) && (ACC_ASM_SYNTAX_GNUC)
  2.7822 +    if (v) {
  2.7823 +        __asm__ __volatile__("pushf\n orl $262144,(%%esp)\n popf\n" : : __ACC_ASM_CLOBBER_LIST_CC_MEMORY);
  2.7824 +    } else {
  2.7825 +        __asm__ __volatile__("pushf\n andl $-262145,(%%esp)\n popf\n" : : __ACC_ASM_CLOBBER_LIST_CC_MEMORY);
  2.7826 +    }
  2.7827 +    return 0;
  2.7828 +#elif (ACC_ARCH_I386) && (ACC_ASM_SYNTAX_MSC)
  2.7829 +    if (v) { __asm {
  2.7830 +        pushf
  2.7831 +        or dword ptr [esp],262144
  2.7832 +        popf
  2.7833 +    }} else { __asm {
  2.7834 +        pushf
  2.7835 +        and dword ptr [esp],-262145
  2.7836 +        popf
  2.7837 +    }}
  2.7838 +    return 0;
  2.7839 +#else
  2.7840 +    ACC_UNUSED(v); return -1;
  2.7841 +#endif
  2.7842 +}
  2.7843 +ACCLIB_PUBLIC_NOINLINE(unsigned, acc_debug_running_on_qemu) (void)
  2.7844 +{
  2.7845 +    unsigned r = 0;
  2.7846 +#if (ACC_OS_POSIX_LINUX || ACC_OS_WIN32 || ACC_OS_WIN64)
  2.7847 +    const char* p;
  2.7848 +    p = __ACCLIB_FUNCNAME(acc_getenv)(ACC_PP_STRINGIZE(ACC_ENV_RUNNING_ON_QEMU));
  2.7849 +    if (p) {
  2.7850 +        if (p[0] == 0) r = 0;
  2.7851 +        else if ((p[0] >= '0' && p[0] <= '9') && p[1] == 0) r = ACC_ICAST(unsigned, p[0]) - '0';
  2.7852 +        else r = 1;
  2.7853 +    }
  2.7854 +#endif
  2.7855 +    return r;
  2.7856 +}
  2.7857 +ACCLIB_PUBLIC_NOINLINE(unsigned, acc_debug_running_on_valgrind) (void)
  2.7858 +{
  2.7859 +#if (ACC_ARCH_AMD64 && ACC_ABI_ILP32)
  2.7860 +    return 0;
  2.7861 +#elif (ACC_ARCH_AMD64 || ACC_ARCH_I386) && (ACC_ASM_SYNTAX_GNUC)
  2.7862 +    volatile size_t a[6];
  2.7863 +    size_t r = 0;
  2.7864 +    a[0] = 0x1001; a[1] = 0; a[2] = 0; a[3] = 0; a[4] = 0; a[5] = 0;
  2.7865 +#  if (ACC_ARCH_AMD64)
  2.7866 +    __asm__ __volatile__(".byte 0x48,0xc1,0xc7,0x03,0x48,0xc1,0xc7,0x0d,0x48,0xc1,0xc7,0x3d,0x48,0xc1,0xc7,0x33,0x48,0x87,0xdb\n" : "=d" (r) : "a" (&a[0]), "d" (r) __ACC_ASM_CLOBBER_LIST_CC_MEMORY);
  2.7867 +#  elif (ACC_ARCH_I386)
  2.7868 +    __asm__ __volatile__(".byte 0xc1,0xc7,0x03,0xc1,0xc7,0x0d,0xc1,0xc7,0x1d,0xc1,0xc7,0x13,0x87,0xdb\n" : "=d" (r) : "a" (&a[0]), "d" (r) __ACC_ASM_CLOBBER_LIST_CC_MEMORY);
  2.7869 +#  endif
  2.7870 +    return ACC_ITRUNC(unsigned, r);
  2.7871 +#else
  2.7872 +    return 0;
  2.7873 +#endif
  2.7874 +}
  2.7875 +#if (ACC_OS_WIN32 && ACC_CC_PELLESC && (__POCC__ >= 290))
  2.7876 +#  pragma warn(pop)
  2.7877 +#endif
  2.7878 +#endif
  2.7879 +#if defined(ACC_WANT_ACCLIB_WILDARGV)
  2.7880 +#  undef ACC_WANT_ACCLIB_WILDARGV
  2.7881 +#define __ACCLIB_WILDARGV_CH_INCLUDED 1
  2.7882 +#if !defined(ACCLIB_PUBLIC)
  2.7883 +#  define ACCLIB_PUBLIC(r,f)    r __ACCLIB_FUNCNAME(f)
  2.7884 +#endif
  2.7885 +#if (ACC_OS_DOS16 || ACC_OS_OS216 || ACC_OS_WIN16)
  2.7886 +#if 0 && (ACC_CC_MSC)
  2.7887 +ACC_EXTERN_C int __acc_cdecl __setargv(void);
  2.7888 +ACC_EXTERN_C int __acc_cdecl _setargv(void);
  2.7889 +ACC_EXTERN_C int __acc_cdecl _setargv(void) { return __setargv(); }
  2.7890 +#endif
  2.7891 +#endif
  2.7892 +#if (ACC_OS_WIN32 || ACC_OS_WIN64)
  2.7893 +#if (ACC_CC_MSC && (_MSC_VER >= 1900))
  2.7894 +#elif (ACC_CC_INTELC || ACC_CC_MSC)
  2.7895 +ACC_EXTERN_C int __acc_cdecl __setargv(void);
  2.7896 +ACC_EXTERN_C int __acc_cdecl _setargv(void);
  2.7897 +ACC_EXTERN_C int __acc_cdecl _setargv(void) { return __setargv(); }
  2.7898 +#endif
  2.7899 +#endif
  2.7900 +#if (ACC_OS_EMX)
  2.7901 +#define __ACCLIB_HAVE_ACC_WILDARGV 1
  2.7902 +ACCLIB_PUBLIC(void, acc_wildargv) (int* argc, char*** argv)
  2.7903 +{
  2.7904 +    if (argc && argv) {
  2.7905 +        _response(argc, argv);
  2.7906 +        _wildcard(argc, argv);
  2.7907 +    }
  2.7908 +}
  2.7909 +#endif
  2.7910 +#if (ACC_OS_CONSOLE_PSP) && defined(__PSPSDK_DEBUG__)
  2.7911 +#define __ACCLIB_HAVE_ACC_WILDARGV 1
  2.7912 +ACC_EXTERN_C int acc_psp_init_module(int*, char***, int);
  2.7913 +ACCLIB_PUBLIC(void, acc_wildargv) (int* argc, char*** argv)
  2.7914 +{
  2.7915 +    acc_psp_init_module(argc, argv, -1);
  2.7916 +}
  2.7917 +#endif
  2.7918 +#if !(__ACCLIB_HAVE_ACC_WILDARGV)
  2.7919 +#define __ACCLIB_HAVE_ACC_WILDARGV 1
  2.7920 +ACCLIB_PUBLIC(void, acc_wildargv) (int* argc, char*** argv)
  2.7921 +{
  2.7922 +#if 1 && (ACC_ARCH_I086PM)
  2.7923 +    if (ACC_MM_AHSHIFT != 3) { exit(1); }
  2.7924 +#elif 1 && (ACC_ARCH_M68K && ACC_OS_TOS && ACC_CC_GNUC) && defined(__MINT__)
  2.7925 +    __binmode(1);
  2.7926 +    if (isatty(1)) __set_binmode(stdout, 0);
  2.7927 +    if (isatty(2)) __set_binmode(stderr, 0);
  2.7928 +#endif
  2.7929 +    ACC_UNUSED(argc); ACC_UNUSED(argv);
  2.7930 +}
  2.7931 +#endif
  2.7932 +#endif
  2.7933 +
  2.7934 +/* vim:set ts=4 sw=4 et: */