port cstdint.hpp to HP-UX

[SVN r11175]
This commit is contained in:
Jens Maurer
2001-09-20 19:25:35 +00:00
parent 08f30ea46c
commit a635f753a4

View File

@ -28,8 +28,8 @@
// The following #include is an implementation artifact; not part of interface. // The following #include is an implementation artifact; not part of interface.
# ifdef __hpux # ifdef __hpux
// HP-UX has a nice <stdint.h> in a non-standard location // HP-UX has a vaguely nice <stdint.h> in a non-standard location
# include <sys/_inttypes.h> # include <inttypes.h>
# ifdef __STDC_32_MODE__ # ifdef __STDC_32_MODE__
// this is triggered with GCC, because it defines __cplusplus < 199707L // this is triggered with GCC, because it defines __cplusplus < 199707L
# define BOOST_NO_INT64_T # define BOOST_NO_INT64_T
@ -147,8 +147,14 @@ namespace boost
# if !defined(BOOST_MSVC) && !defined(__BORLANDC__) && \ # if !defined(BOOST_MSVC) && !defined(__BORLANDC__) && \
(!defined(__GLIBCPP__) || defined(_GLIBCPP_USE_LONG_LONG)) && \ (!defined(__GLIBCPP__) || defined(_GLIBCPP_USE_LONG_LONG)) && \
(defined(ULLONG_MAX) || defined(ULONG_LONG_MAX) || defined(ULONGLONG_MAX)) (defined(ULLONG_MAX) || defined(ULONG_LONG_MAX) || defined(ULONGLONG_MAX))
# if (defined(ULLONG_MAX) && ULLONG_MAX == 18446744073709551615ULL) || (defined(ULONG_LONG_MAX) && ULONG_LONG_MAX == 18446744073709551615ULL) || (defined(ULONGLONG_MAX) && ULONGLONG_MAX == 18446744073709551615ULL) # if defined(__hpux)
// HP-UX's value of ULONG_LONG_MAX is unusable in preprocessor expressions
# elif (defined(ULLONG_MAX) && ULLONG_MAX == 18446744073709551615ULL) || (defined(ULONG_LONG_MAX) && ULONG_LONG_MAX == 18446744073709551615ULL) || (defined(ULONGLONG_MAX) && ULONGLONG_MAX == 18446744073709551615ULL)
// 2**64 - 1 // 2**64 - 1
# else
# error defaults not correct; you must hand modify boost/cstdint.hpp
# endif
typedef long long intmax_t; typedef long long intmax_t;
typedef unsigned long long uintmax_t; typedef unsigned long long uintmax_t;
typedef long long int64_t; typedef long long int64_t;
@ -157,9 +163,7 @@ namespace boost
typedef unsigned long long uint64_t; typedef unsigned long long uint64_t;
typedef unsigned long long uint_least64_t; typedef unsigned long long uint_least64_t;
typedef unsigned long long uint_fast64_t; typedef unsigned long long uint_fast64_t;
# else
# error defaults not correct; you must hand modify boost/cstdint.hpp
# endif
# elif ULONG_MAX != 0xffffffff # elif ULONG_MAX != 0xffffffff
# if ULONG_MAX == 18446744073709551615 // 2**64 - 1 # if ULONG_MAX == 18446744073709551615 // 2**64 - 1
@ -268,15 +272,17 @@ BOOST_HAS_STDINT_H is defined (John Maddock).
// 64-bit types + intmax_t and uintmax_t ----------------------------------// // 64-bit types + intmax_t and uintmax_t ----------------------------------//
# if defined(ULLONG_MAX) || defined(ULONG_LONG_MAX) || defined(ULONGLONG_MAX) # if defined(ULLONG_MAX) || defined(ULONG_LONG_MAX) || defined(ULONGLONG_MAX)
# if defined(__hpux)
// HP-UX's value of ULONG_LONG_MAX is unusable in preprocessor expressions // HP-UX's value of ULONG_LONG_MAX is unusable in preprocessor expressions
# if (defined(ULLONG_MAX) && ULLONG_MAX == 18446744073709551615U) || \ # elif (defined(ULLONG_MAX) && ULLONG_MAX == 18446744073709551615U) || \
(defined(ULONG_LONG_MAX) && (defined(__hpux) || ULONG_LONG_MAX == 18446744073709551615U)) || \ (defined(ULONG_LONG_MAX) && ULONG_LONG_MAX == 18446744073709551615U) || \
(defined(ULONGLONG_MAX) && ULONGLONG_MAX == 18446744073709551615U) (defined(ULONGLONG_MAX) && ULONGLONG_MAX == 18446744073709551615U)
# define INT64_C(value) value##LL
# define UINT64_C(value) value##uLL
# else # else
# error defaults not correct; you must hand modify boost/cstdint.hpp # error defaults not correct; you must hand modify boost/cstdint.hpp
# endif # endif
# define INT64_C(value) value##LL
# define UINT64_C(value) value##uLL
# elif ULONG_MAX != 0xffffffff # elif ULONG_MAX != 0xffffffff
# if ULONG_MAX == 18446744073709551615 // 2**64 - 1 # if ULONG_MAX == 18446744073709551615 // 2**64 - 1