clang -O2 -Wall -Wextra -Werror -Wno-error=deprecated -Wno-error=deprecated-declarations unistd/getresuid.c -o unistd/getresuid -D_POSIX_C_SOURCE=202405L -lm -lintl unistd/getresuid.c:11:65: error: use of undeclared identifier 'getresuid'; did you mean 'geteuid'? int (*foo)(uid_t *restrict, uid_t *restrict, uid_t *restrict) = getresuid; ^~~~~~~~~ geteuid /usr/include/unistd.h:117:8: note: 'geteuid' declared here uid_t geteuid(void); ^ unistd/getresuid.c:11:7: error: incompatible pointer types initializing 'int (*)(__uid_t *restrict, __uid_t *restrict, __uid_t *restrict)' with an expression of type '__uid_t (void)' [-Werror,-Wincompatible-pointer-types] int (*foo)(uid_t *restrict, uid_t *restrict, uid_t *restrict) = getresuid; ^ ~~~~~~~~~ 2 errors generated.