
Martin Bonner ha escrito:
----Original Message---- From: Joaquin M Lopez Munoz [mailto:joaquin@tid.es]
Is BOOST_HAS_INTPTR_TYPES supposed to inform whether there are vendor-provided ::intrptr_t/::uintrptr_t types? If so, I fail to see its utility, since boost::intrptr_t/boost::untrptr_t can be provided universally.
Not if the compiler doesn't HAVE a integral type which can hold a pointer. For example, a compiler for Intel processors with 32 bit longs, no long long, and 16:32 pointers.
But then, one doesn't really care whether the vendor has ::[u]intrptr_t as long as she has Boost-provided boost::[u]intrptr_t, right? To cope with the situtations you describe, the macro should be named then something like BOOST_NO_BOOST_INTPTR_TYPES or BOOST_NO_POINTER_SIZED_INT_TYPE or anything that makes it clear we are refererring to boost/cstdint.hpp rather than the vendor stuff. Besides, from what Beman says seems there's no current Boost-supported platform where boost::[u]intrptr_t couldn't be assigned a suitable type. Joaquín M López Muñoz Telefónica, Investigación y Desarrollo