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:
Jens Maurer
2001-05-11 17:04:56 +00:00
parent 07505c76f8
commit 28ec7fa76c

View File

@ -144,7 +144,12 @@ namespace boost
// 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)
// 2**64 - 1
typedef long long intmax_t;