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

@ -2444,7 +2444,7 @@ static CURLcode myssh_statemachine(struct Curl_easy *data,
if(!result && (sshc->state == SSH_STOP))
result = sshc->actualcode;
CURL_TRC_SSH(data, "[%s] statemachine() -> %d, block=%d",
Curl_ssh_statename(sshc->state), result, *block);
Curl_ssh_statename(sshc->state), (int)result, *block);
return result;
}
@ -2469,7 +2469,7 @@ static CURLcode myssh_pollset(struct Curl_easy *data,
if(waitfor & REQ_IO_SEND)
flags |= CURL_POLL_OUT;
DEBUGASSERT(flags);
CURL_TRC_SSH(data, "pollset, flags=%x", flags);
CURL_TRC_SSH(data, "pollset, flags=%x", (unsigned int)flags);
return Curl_pollset_change(data, ps, sock, flags, 0);
}
/* While we still have a session, we listen incoming data. */