Add INT64_HEX_FORMAT and UINT64_HEX_FORMAT to c.h.
authorNathan Bossart <nathan@postgresql.org>
Fri, 22 Nov 2024 18:41:57 +0000 (12:41 -0600)
committerNathan Bossart <nathan@postgresql.org>
Fri, 22 Nov 2024 18:41:57 +0000 (12:41 -0600)
commitefdc7d747539fccc7c9a946bfcb4ded716f679f1
tree9b00ff5c612228ea0dd1d332af3d9386025ce85a
parent8589876b796e1b78ccb38c3557f648f2b5f336ba
Add INT64_HEX_FORMAT and UINT64_HEX_FORMAT to c.h.

Like INT64_FORMAT and UINT64_FORMAT, these macros produce format
strings for 64-bit integers.  However, INT64_HEX_FORMAT and
UINT64_HEX_FORMAT generate the output in hexadecimal instead of
decimal.  Besides introducing these macros, this commit makes use
of them in several places.  This was originally intended to be part
of commit 5d6187d2a2, but I left it out because I felt there was a
nonzero chance that back-patching these new macros into c.h could
cause problems with third-party code.  We tend to be less cautious
with such changes in new major versions.

Note that UINT64_HEX_FORMAT was originally added in commit
ee1b30f128, but it was placed in test_radixtree.c, so it wasn't
widely available.  This commit moves UINT64_HEX_FORMAT to c.h.

Discussion: https://postgr.es/m/ZwQvtUbPKaaRQezd%40nathan
contrib/postgres_fdw/option.c
src/backend/utils/error/csvlog.c
src/backend/utils/error/elog.c
src/backend/utils/error/jsonlog.c
src/include/c.h
src/test/modules/test_radixtree/test_radixtree.c