In current versions of macOS, $(CC) in Makefile is gcc but gcc points to clang. clang complains when h is used for char or int (h is usually for short). Signed-off-by: Joe van Tunen <joevt@xxxxxxx> --- edid-decode.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/edid-decode.c b/edid-decode.c index ce404cd..a40ee96 100644 --- a/edid-decode.c +++ b/edid-decode.c @@ -1127,13 +1127,13 @@ static int do_checksum(const unsigned char *x, size_t len) unsigned char sum = 0; unsigned i; - printf("Checksum: 0x%hx", check); + printf("Checksum: 0x%hhx", check); for (i = 0; i < len-1; i++) sum += x[i]; if ((unsigned char)(check + sum) != 0) { - printf(" (should be 0x%hx)\n", -sum & 0xff); + printf(" (should be 0x%x)\n", -sum & 0xff); return 0; } @@ -3286,7 +3286,7 @@ static int edid_from_file(const char *from_file, const char *to_file, } cur_block = "EDID Structure Version & Revision"; - printf("EDID version: %hd.%hd\n", edid[0x12], edid[0x13]); + printf("EDID version: %hhu.%hhu\n", edid[0x12], edid[0x13]); if (edid[0x12] == 1) { if (edid[0x13] > 4) { printf("Claims > 1.4, assuming 1.4 conformance\n"); @@ -3321,12 +3321,12 @@ static int edid_from_file(const char *from_file, const char *to_file, if (edid[0x11] <= 0x0f) { fail("bad year of manufacture\n"); } else if (edid[0x10] == 0xff) { - printf("Model year %hu\n", edid[0x11] + 1990); + printf("Model year %u\n", edid[0x11] + 1990); } else if (edid[0x11] + 90 <= ptm->tm_year + 1) { if (edid[0x10]) - printf("Made in week %hu of %hu\n", edid[0x10], edid[0x11] + 1990); + printf("Made in week %hhu of %u\n", edid[0x10], edid[0x11] + 1990); else - printf("Made in year %hu\n", edid[0x11] + 1990); + printf("Made in year %u\n", edid[0x11] + 1990); } else { fail("bad year of manufacture\n"); } -- 2.21.0 (Apple Git-122.2)