Marc Glisse <marc.gli...@inria.fr> writes: There is, it is called (u)intptr_t, the standard name for an integer type that can hold a pointer.
Right! I only naively checked intmax_t, assuming max would mean max. :-) There seem to be a problem with arithmetic on uintptr_t, though. The compiler generates a plain "mul" instruction for multiplying two of these fat integers, which is not quite right. Admittedly, the compiler outputs an arm (no pun intended) long warning message: foo.c:7:12: warning: binary expression on capability types 'uintptr_t' (aka 'unsigned __intcap') and 'uintptr_t'; it is not clear which should be used as the source of provenance; currently provenance is inherited from the left-hand side [-Wcheri-provenance] Not sure what that means, though. But it probably means "I generate garbage code from your sources, sorry about that". -- Torbjörn Please encrypt, key id 0xC8601622 _______________________________________________ gmp-bugs mailing list gmp-bugs@gmplib.org https://gmplib.org/mailman/listinfo/gmp-bugs