|
Boost : |
From: Jens Maurer (Jens.Maurer_at_[hidden])
Date: 2000-09-23 11:02:37
Ed Brey wrote:
> Do we need the suffix at all?
Yes, if the literal exceeds the maximum long.
> BTW2, random.hpp uses the ULL suffix.
I've fixed that where possible, but I think I cannot fix that for
literals exceeding the maximum long. Suggestion?
> BTW3, random.hpp also uses the macro BOOST_STDINT_H_HAS_UINT64_T,
> which isn't defined anywhere. It should be changed to use
> BOOST_NO_INT64_T.
Fixed. Please regression-test on MSVC and Borland.
> Note, however, that this would cause VC to try to
> compile rand48, which still doesn't work, because, for one reason,
> the enum hack doesn't scale to 64-bits.
There is no enum with 64 bit values in rand48.
For now, I've applied the fix conservatively (i.e. no rand48 with
MSVC), but please try rand48 with MSVC.
Oh, and I've extended boost/stdint.h to make 64 bit types available
with gcc as well, because gcc uses ULONG_LONG_MAX instead of
ULLONG_MAX for the relevant preprocessor define.
I've also updated integer_traits_test.cpp with the new
BOOST_NO_INT64_T #define.
Everything is in the CVS, there are no regressions with gcc on Linux.
Jens Maurer
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk