clang -O2 -Wall -Wextra -Werror -Wno-error=deprecated -Wno-error=deprecated-declarations libintl/dngettext_l.c -o libintl/dngettext_l -D_POSIX_C_SOURCE=202405L -lm -lintl libintl/dngettext_l.c:5:75: error: type specifier missing, defaults to 'int' [-Werror,-Wimplicit-int] char *(*foo)(const char *, const char *, const char *, unsigned long int, locale_t) = dngettext_l; ^ libintl/dngettext_l.c:5:87: error: use of undeclared identifier 'dngettext_l'; did you mean 'dngettext'? char *(*foo)(const char *, const char *, const char *, unsigned long int, locale_t) = dngettext_l; ^~~~~~~~~~~ dngettext /usr/include/libintl.h:59:7: note: 'dngettext' declared here char *dngettext(const char *, const char *, const char *, unsigned long int) ^ libintl/dngettext_l.c:5:9: error: incompatible pointer types initializing 'char *(*)(const char *, const char *, const char *, unsigned long, int)' with an expression of type 'char *(const char *, const char *, const char *, unsigned long)' [-Werror,-Wincompatible-pointer-types] char *(*foo)(const char *, const char *, const char *, unsigned long int, locale_t) = dngettext_l; ^ ~~~~~~~~~~~ 3 errors generated.