clang -O2 -Wall -Wextra -Werror=implicit-function-declaration wchar/wcpcpy.c -o wchar/wcpcpy -D_GNU_SOURCE -D_BSD_SOURCE -D_ALL_SOURCE -D_DEFAULT_SOURCE -lm -lintl wchar/wcpcpy.c:11:7: error: implicit declaration of function 'wcpcpy' is invalid in C99 [-Werror,-Wimplicit-function-declaration] if ( wcpcpy(dst, src) != dst + 7 ) ^ wchar/wcpcpy.c:11:7: note: did you mean 'wcscpy'? /usr/include/wchar.h:111:10: note: 'wcscpy' declared here wchar_t *wcscpy(wchar_t * __restrict, const wchar_t * __restrict); ^ wchar/wcpcpy.c:11:24: warning: comparison between pointer and integer ('int' and 'wchar_t *' (aka 'int *')) if ( wcpcpy(dst, src) != dst + 7 ) ~~~~~~~~~~~~~~~~ ^ ~~~~~~~ 1 warning and 1 error generated.