cc -pthread -Wall -Wextra -Werror -Wno-error=deprecated -Wno-error=deprecated-declarations wchar/wcsncasecmp_l.c -o wchar/wcsncasecmp_l -D_POSIX_C_SOURCE=202405L -lm -lpthread -liconv wchar/wcsncasecmp_l.c:5:54: error: type specifier missing, defaults to 'int'; ISO C99 and later do not support implicit int [-Wimplicit-int] 5 | int (*foo)(const wchar_t *, const wchar_t *, size_t, locale_t) = wcsncasecmp_l; | ^ | int wchar/wcsncasecmp_l.c:5:66: error: use of undeclared identifier 'wcsncasecmp_l'; did you mean 'wcsncasecmp'? 5 | int (*foo)(const wchar_t *, const wchar_t *, size_t, locale_t) = wcsncasecmp_l; | ^~~~~~~~~~~~~ | wcsncasecmp /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_wchar.h:201:9: note: 'wcsncasecmp' declared here 201 | int wcsncasecmp(const wchar_t *, const wchar_t *, size_t n) __OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_4_3); | ^ wchar/wcsncasecmp_l.c:5:7: error: incompatible function pointer types initializing 'int (*)(const wchar_t *, const wchar_t *, size_t, int)' (aka 'int (*)(const int *, const int *, unsigned long, int)') with an expression of type 'int (const wchar_t *, const wchar_t *, size_t)' (aka 'int (const int *, const int *, unsigned long)') [-Wincompatible-function-pointer-types] 5 | int (*foo)(const wchar_t *, const wchar_t *, size_t, locale_t) = wcsncasecmp_l; | ^ ~~~~~~~~~~~~~ 3 errors generated.