Move unsigned limits to a separate table/recognizer and display them
using the appropriate (unsigned) format specification. This prevents
integer overflow when ULLONG_MAX and (on some architectures) ULONG_MAX
are used to initialize an intmax_t and then displayed as the signed
value -1. (A different approach was suggested in the bug report,
which I did not use.) If other limits are defined to be unsigned,
they could be moved here.
Reported by: Marcus Reid