From: Nick Bowler Date: Fri, 17 Nov 2023 04:07:34 +0000 (-0500) Subject: copysym: Avoid dependency on X-Git-Url: http://git.draconx.ca/gitweb/dxcommon.git/commitdiff_plain/6c607da0ba3527c5454229707261d79d0b6932eb copysym: Avoid dependency on The header is older and a bit more portable. But even then, it is not really essential for this code. So adjust things to use only if the Autoconf-provided HAVE_INTTYPES_H is defined; otherwise a C89 -based fallback is used. --- diff --git a/src/copysym.c b/src/copysym.c index 3d72d6a..6ff93f3 100644 --- a/src/copysym.c +++ b/src/copysym.c @@ -16,7 +16,20 @@ #include #include -#include + +#if HAVE_INTTYPES_H +#include +typedef uint_least32_t dx_u32; +typedef uint_least64_t dx_u64; +#else +#include +#if UINT_MAX >= 0xffffffff +typedef unsigned dx_u32; +#else +typedef unsigned long dx_u32; +#endif +typedef unsigned long long dx_u64; +#endif #define ARRAYSIZE(x) (sizeof (x) / sizeof (x)[0]) @@ -124,7 +137,7 @@ const char *copyright_symbol(const char *charset) * codes array for the corresponding index in t1, except that * ISO-8859 matches the special value '2' (handled below). */ - uint_least64_t results = 0x001921fb13777511; + dx_u64 results = 0x001921fb13777511; const char (*m1)[sizeof *t1]; unsigned x, cindex; @@ -164,8 +177,8 @@ const char *copyright_symbol(const char *charset) * two digits. The set bits in the 'accept' value indicate * which encodings have the copyright symbol. */ - uint_least32_t accept = 0x00380383; - uint_least32_t collect = 0; + dx_u32 accept = 0x00380383; + dx_u32 collect = 0; char c; while ((c = *charset++)) {