glibc defines two versions of strerror_r, the char* returning one is used
when _GNU_SOURCE is defined. This triggers a -Wint-conversion error in
the krb5 strerror_r wrapper, but until clang 19 this was just a normal
warning, now it defaults to being an error.
/home/runner/work/freebsd-src/freebsd-src/crypto/krb5/src/util/support/strerror_r.c: In function ‘k5_strerror_r’:
/home/runner/work/freebsd-src/freebsd-src/crypto/krb5/src/util/support/strerror_r.c:94:12: warning: returning ‘char *’ from a function with return type ‘int’ makes integer from pointer without a cast [-Wint-conversion]
94 | return strerror_r(errnum, buf, buflen); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
This was not caught by the GitHub CI since it still builds with clang 18
on the Linux runners. Add -Werror=int-conversion to the build flags to
catch errors like this in the future.
MFC after: 3 days