Paul Eggert wrote: > * doc/gnulib-readme.texi: > Prefer “null pointer” to “@code{NULL}” since C23 has nullptr. > (Portability guidelines): Mention C99 instead of C89 for what > Gnulib assumes of headers. > (C99 features avoided): Mention CHERI issue with intptr_t etc. > (Other portability assumptions): Say that C23 requires two’s > complement. Mention CHERI’s holes.
Thanks, especially for the update from C89 to C99. > @item > There are no ``holes'' in integer values: all the bits of an integer > contribute to its value in the usual way. > In particular, an unsigned type and its signed counterpart have the > same number of bits when you count the latter's sign bit. > +(As an exception, Gnulib code is portable to CHERI platforms > +even though this assumption is false for CHERI.) Huh? Which integer types on CHERI have "holes"? If you are referring to <https://lists.gnu.org/archive/html/bug-gnulib/2023-11/msg00092.html>, this patch was necessary because on CHERI it's invalid to fetch 8 bytes from memory if only 1 to 7 bytes were allocated, not because of holes in the 'unsigned long' type. Bruno