clang -O2 -Wall -Wextra -Werror=implicit-function-declaration libintl/ngettext_l.c -o libintl/ngettext_l -D_GNU_SOURCE -D_BSD_SOURCE -D_ALL_SOURCE -D_DEFAULT_SOURCE -lm -lintl libintl/ngettext_l.c:20:18: error: implicit declaration of function 'ngettext_l' is invalid in C99 [-Werror,-Wimplicit-function-declaration] char* output0 = ngettext_l(input, input_plural, 0, locale); ^ libintl/ngettext_l.c:20:18: note: did you mean 'ngettext'? /usr/include/libintl.h:57:7: note: 'ngettext' declared here char *ngettext(const char *, const char *, unsigned long int) ^ libintl/ngettext_l.c:20:8: warning: incompatible integer to pointer conversion initializing 'char *' with an expression of type 'int' [-Wint-conversion] char* output0 = ngettext_l(input, input_plural, 0, locale); ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ libintl/ngettext_l.c:28:8: warning: incompatible integer to pointer conversion initializing 'char *' with an expression of type 'int' [-Wint-conversion] char* output1 = ngettext_l(input, input_plural, 1, locale); ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ libintl/ngettext_l.c:36:8: warning: incompatible integer to pointer conversion initializing 'char *' with an expression of type 'int' [-Wint-conversion] char* output2 = ngettext_l(input, input_plural, 2, locale); ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ libintl/ngettext_l.c:44:8: warning: incompatible integer to pointer conversion initializing 'char *' with an expression of type 'int' [-Wint-conversion] char* output9 = ngettext_l(input, input_plural, 9, locale); ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 4 warnings and 1 error generated.