Boost logo

Boost :

From: Beman Dawes (bdawes_at_[hidden])
Date: 2005-09-24 09:02:27


"Beman Dawes" <bdawes_at_[hidden]> wrote in message
news:dgkm6j$h00$1_at_sea.gmane.org...
>
> "Maxim Yegorushkin" <maxim.yegorushkin_at_[hidden]> wrote in message
> news:op.sxa6eylkp2vbb7_at_home...
>> Is this intentional that uintptr_t and intptr_t types are missing in
>> cstdint.hpp? If it is so, why?
>>
>> http://www.opengroup.org/onlinepubs/009695399/basedefs/stdint.h.html
>
> An oversight? Care to submit a patch?

I spoke too soon. The reason intptr_t and uintptr_t were omitted was because
they are not required by C99, and hence not required by TR1.

So we should discuss this further before applying Maxim's patch.

On one hand, we may not want Boost code to use a feature that may not be
present.

OTOH, if virtually all modern C++ compilers do support an integral type
large enough to hold a pointer, why not supply intptr_t and uintptr_t?

One possibility is to go ahead and supply intptr_t and uintptr_t, and also
supply a BOOST_HAS_INTPTR_TYPES (or perhaps BOOST_NO_INTPTR_TYPES)
configuration macro.

Views? Comments?

--Beman


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