Boost logo

Boost :

From: David Abrahams (abrahams_at_[hidden])
Date: 2001-01-24 23:20:40


----- Original Message -----
From: "Beman Dawes" <bdawes_at_[hidden]>

> At 03:11 PM 1/24/2001 +0100, Gabriel Dos Reis wrote:
>
> >| ... And a 64-bit type such as
> >| "long long" or "__int64" or whatever the vendor chooses to call it is
> >| potentially a very reasonable choice.
> >
> >Yes, but a vendor who chooses to support long long or __int64 will
> >provide the accompaning functions if he thinks he want to support
> >those types as arithmetic types.
>
> The problem we have run into with long long or (__int64) on at least two
> current compilers is that they provided most (but not 100%) of the
> accompanying functions. So everything looked OK at first, and then there
> was a missing extractor, or no conversion to double, or whatever.
>
> So it looks like boost should prepare for long long, but not expect it to
> work just yet, even in compilers apparently supporting long long.

Yep. An interesting phenomenon with MSVC is that numeric_limits<> is not
specialized for __int64... and it can't be, at least if you want
compile-time constants, because the enums you must use cannot hold the
proper values of min and max. What fun!

I'm not sure whether it's better to provide a numeric_limits<> for long long
without compile-time constants, or just keep the status quo.

-Dave


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk