cc -pthread -Wall -Wextra -Werror=implicit-function-declaration string/strxfrm_l.c -o string/strxfrm_l -D_GNU_SOURCE -D_BSD_SOURCE -D_ALL_SOURCE -D_DEFAULT_SOURCE -lm -lpthread -liconv string/strxfrm_l.c:17:7: error: call to undeclared function 'strxfrm_l'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration] 17 | if ( strxfrm_l(A, a, sizeof(A), locale) != 7 ) | ^ string/strxfrm_l.c:17:7: note: did you mean 'strxfrm'? /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_string.h:112:9: note: 'strxfrm' declared here 112 | size_t strxfrm(char *_LIBC_COUNT(__n) __s1, const char *__s2, size_t __n); | ^ string/strxfrm_l.c:22:13: error: call to undeclared function 'strcoll_l'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration] 22 | int coll = strcoll_l(a, b, locale); | ^ string/strxfrm_l.c:22:13: note: did you mean 'strcoll'? /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_string.h:90:6: note: 'strcoll' declared here 90 | int strcoll(const char *__s1, const char *__s2); | ^ 2 errors generated.