DO NOT REPLY TO THIS MESSAGE.  INSTEAD, POST ANY RESPONSES TO THE LINK BELOW.

[STR New]

Link: http://www.fltk.org/str.php?L2308
Version: 1.3.0


intptr_t seems to be defined in C99 [1] and in c++0x [2], but both
definitions are *optional*. Citation from [1]:

7.18 Integer types <stdint.h>
 ...
7.18.1.4 Integer types capable of holding object pointers

The following type designates a signed integer type with the property that
any valid pointer to void can be converted to this type, then converted
back to pointer to void, and the result will compare equal to the original
pointer:

intptr_t

[... similar text for uintptr_t follows ...]

These types are optional.

-- end of citation --

I conclude that we would need a configure test and an own typedef that
would fall back to something like "long" if intptr_t is not defined,
*even* if we agree that we can use at least the C99 standard.

Can we assume that we will find intptr_t on all current 64-bit systems? If
yes, then we could use the above mentioned configure test and typedef and
use it wherever applicable, but if not... I don't know.

Note: In c++0x these type are defined in the header <cstdint> with
namespace std::, but I believe that c++0x is not yet released (is it?).

---
Drafts of standards:
[1] http://www.open-std.org/jtc1/sc22/WG14/www/docs/n1256.pdf
[2] http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2010/n3126.pdf


Link: http://www.fltk.org/str.php?L2308
Version: 1.3.0

_______________________________________________
fltk-bugs mailing list
[email protected]
http://lists.easysw.com/mailman/listinfo/fltk-bugs

Reply via email to