clang -O2 -Wall -Wextra -Werror=implicit-function-declaration libintl/dngettext_l.c -o libintl/dngettext_l -D_GNU_SOURCE -D_BSD_SOURCE -D_ALL_SOURCE -D_DEFAULT_SOURCE -lm -lintl libintl/dngettext_l.c:20:18: error: implicit declaration of function 'dngettext_l' is invalid in C99 [-Werror,-Wimplicit-function-declaration] char* output0 = dngettext_l("os-test", input, input_plural, 0, locale); ^ libintl/dngettext_l.c:20:18: note: did you mean '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:20:8: warning: incompatible integer to pointer conversion initializing 'char *' with an expression of type 'int' [-Wint-conversion] char* output0 = dngettext_l("os-test", input, input_plural, 0, locale); ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ libintl/dngettext_l.c:28:8: warning: incompatible integer to pointer conversion initializing 'char *' with an expression of type 'int' [-Wint-conversion] char* output1 = dngettext_l("os-test", input, input_plural, 1, locale); ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ libintl/dngettext_l.c:36:8: warning: incompatible integer to pointer conversion initializing 'char *' with an expression of type 'int' [-Wint-conversion] char* output2 = dngettext_l("os-test", input, input_plural, 2, locale); ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ libintl/dngettext_l.c:44:8: warning: incompatible integer to pointer conversion initializing 'char *' with an expression of type 'int' [-Wint-conversion] char* output9 = dngettext_l("os-test", input, input_plural, 9, locale); ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 4 warnings and 1 error generated.