V3 PATCH: numeric_limits<> support, fix PR/3865
Richard Henderson
rth@redhat.com
Sun Sep 1 15:31:00 GMT 2002
On Sun, Sep 01, 2002 at 11:58:05PM +0200, Gabriel Dos Reis wrote:
> How do you define numeric_limits<wchar_t>::digits10 ?
// Using the fact that 8,16,32 are the same wrt digits10; could put
// the signed/unsigned check as another ?: at the beginning. Also
// no reason not to use this scheme for all the other integral type
// definitions and remove some of the other ifdeffing at the same time.
#define digits10_for_int_type(TYPE) \
(sizeof (TYPE) * __CHAR_BIT__ == 8 ? 2 \
: sizeof (TYPE) * __CHAR_BIT__ == 16 ? 4 \
: sizeof (TYPE) * __CHAR_BIT__ == 32 ? 9 \
: sizeof (TYPE) * __CHAR_BIT__ == 64 ? 18 + ((TYPE)-1 > 0) \
: /* error */ 0)
static const int digits10 = digits10_for_int_type (wchar_t);
r~
More information about the Libstdc++
mailing list