build: enable -Wformat-signedness, fix issues found

Adjust code to avoid `-Wformat-signedness` warnings, while making sure
that enums are always cast to a known type when passing them to `printf`
functions, to support compilers and compiler settings where enums are
not default-size signed ints.

- cast integers printed as hex to `unsigned`. (63 times, 20 of them in
  `mbedtls.c`)
- cast misc enums to `int` for printing. (31 times)
- cast `CURL_LOCK_DATA_*` enums to `int`. (4 times)
- cast `CURL_FORMADD_*` enums to `int`. (13 times)
- cast `CURLSHE_*` enums to `int`. (3 times)
- cast `CURLUE_*` enums to `int`. (33 times)
- cast `CURLMSG_*` enums to `int`. (6 times)
- cast `CURLE_*` enums to `int`. (~380 times)
- unit1675: fix mask.
  Follow-up to 7c34365cce #21879

Ref: #18343 (initial attempt)

Closes #20848
This commit is contained in:
Viktor Szakats 2026-04-16 10:52:57 +02:00
parent ae2986cdf0
commit 2f3fa479dd
No known key found for this signature in database
162 changed files with 565 additions and 509 deletions

View file

@ -1204,7 +1204,8 @@ CURLMcode Curl_multi_pollset(struct Curl_easy *data,
break;
default:
failf(data, "multi_getsock: unexpected multi state %d", data->mstate);
failf(data, "multi_getsock: unexpected multi state %d",
(int)data->mstate);
DEBUGASSERT(0);
break;
}
@ -1213,7 +1214,7 @@ CURLMcode Curl_multi_pollset(struct Curl_easy *data,
if(result) {
if(result == CURLE_OUT_OF_MEMORY)
return CURLM_OUT_OF_MEMORY;
failf(data, "error determining pollset: %d", result);
failf(data, "error determining pollset: %d", (int)result);
return CURLM_INTERNAL_ERROR;
}
@ -2516,7 +2517,7 @@ static CURLMcode multistate_connecting(struct Curl_easy *data,
}
else if(*result) {
/* failure detected */
CURL_TRC_M(data, "connect failed -> %d", *result);
CURL_TRC_M(data, "connect failed -> %d", (int)*result);
multi_posttransfer(data);
multi_done(data, *result, TRUE);
*stream_error = TRUE;