forked from boostorg/integer
Don't use "long long" with gcc 3.0's shipped library, because it does
not define operator<<(ostream&, long long) overloads. [SVN r10095]
This commit is contained in:
@ -144,7 +144,12 @@ namespace boost
|
|||||||
|
|
||||||
// 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) && !defined(BOOST_MSVC) && !defined(__BORLANDC__))
|
// GCC 3.0 supports "long long" and has the proper defines. However, the
|
||||||
|
// library shipped with GCC 3.0 doesn't have operator<<(ostream&, long long).
|
||||||
|
// For now, disable "long long" here.
|
||||||
|
# if !defined(BOOST_MSVC) && !defined(__BORLANDC__) && \
|
||||||
|
!(defined(__GNUC__) && __GNUC__ == 3 && __GNUC_MINOR__ == 0 && defined(__GLIBCPP__)) && \
|
||||||
|
(defined(ULLONG_MAX) || defined(ULONG_LONG_MAX) || defined(ULONGLONG_MAX))
|
||||||
# if (defined(ULLONG_MAX) && ULLONG_MAX == 18446744073709551615U) || (defined(ULONG_LONG_MAX) && ULONG_LONG_MAX == 18446744073709551615U) || (defined(ULONGLONG_MAX) && ULONGLONG_MAX == 18446744073709551615U)
|
# if (defined(ULLONG_MAX) && ULLONG_MAX == 18446744073709551615U) || (defined(ULONG_LONG_MAX) && ULONG_LONG_MAX == 18446744073709551615U) || (defined(ULONGLONG_MAX) && ULONGLONG_MAX == 18446744073709551615U)
|
||||||
// 2**64 - 1
|
// 2**64 - 1
|
||||||
typedef long long intmax_t;
|
typedef long long intmax_t;
|
||||||
|
Reference in New Issue
Block a user