$ printf '#include <wchar.h>\n' | gcc -D_POSIX_C_SOURCE=200809L -E -\ | grep 'wcpn\?cpy' $ printf '#include <wchar.h>\n' | gcc -D_GNU_SOURCE=1 -E -\ | grep 'wcpn\?cpy' extern wchar_t *wcpcpy (wchar_t *__restrict __dest, extern wchar_t *wcpncpy (wchar_t *__restrict __dest, $ Oops - POSIX 2008 requires these declarations: http://pubs.opengroup.org/onlinepubs/9699919799/functions/wcpcpy.html http://sourceware.org/git/?p=glibc.git;a=commitdiff;h=dbb0472f removed them in error. Yes, they should _not_ be visible when going for strict ANSI compliance, but that's the point of _POSIX_C_SOURCE - to request POSIX extensions to ANSI C.
Changed in git.