cc -pthread -Wall -Wextra -Werror -Wno-error=deprecated -Wno-error=deprecated-declarations string/strcoll_l.c -o string/strcoll_l -D_POSIX_C_SOURCE=202405L -lm -lpthread -liconv string/strcoll_l.c:5:40: error: type specifier missing, defaults to 'int' [-Werror,-Wimplicit-int] int (*foo)(const char *, const char *, locale_t) = strcoll_l; ^ string/strcoll_l.c:5:52: error: use of undeclared identifier 'strcoll_l'; did you mean 'strcoll'? int (*foo)(const char *, const char *, locale_t) = strcoll_l; ^~~~~~~~~ strcoll /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/string.h:78:6: note: 'strcoll' declared here int strcoll(const char *__s1, const char *__s2); ^ string/strcoll_l.c:5:7: error: incompatible function pointer types initializing 'int (*)(const char *, const char *, int)' with an expression of type 'int (const char *, const char *)' [-Werror,-Wincompatible-function-pointer-types] int (*foo)(const char *, const char *, locale_t) = strcoll_l; ^ ~~~~~~~~~ 3 errors generated.